Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Java (programming language)</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Java_(programming_language)"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/ext.pygments.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Java_programming_language rootpage-Java_programming_language skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Java (programming language)</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<style data-mw-deduplicate="TemplateStyles:r1236090951">
/* start https://en.wikipedia.org/ */


.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}


/* end https://en.wikipedia.org/ */
</style><div role="note" class="hatnote navigation-not-searchable">This article is about the object-oriented programming language. For the software platform, see <a href="Java_(software_platform)" title="Java (software platform)">Java (software platform)</a>. For the Indonesian island, see <a href="Java" title="Java">Java</a>. For the Indonesian Language, see <a href="Javanese_(disambiguation)" class="mw-redirect mw-disambig" title="Javanese (disambiguation)">Javanese</a>. For other uses, see <a href="Java_(disambiguation)" class="mw-disambig" title="Java (disambiguation)">Java (disambiguation)</a>.</div>
<div role="note" class="hatnote navigation-not-searchable">Not to be confused with <a href="JavaScript" title="JavaScript">JavaScript</a>.</div>
<div role="note" class="hatnote navigation-not-searchable">"Openframe" redirects here. For the ten-pin bowling term, see <a href="Open_frame" title="Open frame">Open frame</a>.</div>
<p class="mw-empty-elt">

</p>
<style data-mw-deduplicate="TemplateStyles:r1129693374">
/* start https://en.wikipedia.org/ */


.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}


/* end https://en.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r1295905060">
/* start https://en.wikipedia.org/ */


.mw-parser-output .infobox-subbox{padding:0;border:none;margin:-3px;width:auto;min-width:100%;font-size:100%;clear:none;float:none;background-color:transparent}.mw-parser-output .infobox-3cols-child{margin:auto}.mw-parser-output .infobox .navbar{font-size:100%}@media screen{html.skin-theme-clientpref-night .mw-parser-output .infobox-full-data:not(.notheme)>div:not(.notheme)[style]{background:#1f1f23!important;color:#f8f9fa}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .infobox-full-data:not(.notheme)>div:not(.notheme)[style]{background:#1f1f23!important;color:#f8f9fa}}@media(min-width:640px){body.skin--responsive .mw-parser-output .infobox-table{display:table!important}body.skin--responsive .mw-parser-output .infobox-table>caption{display:table-caption!important}body.skin--responsive .mw-parser-output .infobox-table>tbody{display:table-row-group}body.skin--responsive .mw-parser-output .infobox-table th,body.skin--responsive .mw-parser-output .infobox-table td{padding-left:inherit;padding-right:inherit}}


/* end https://en.wikipedia.org/ */
</style><table class="infobox vevent"><tbody><tr><th colspan="2" class="infobox-above" style="background-color:#e0e0e0;">Java</th></tr><tr><td colspan="2" class="infobox-image"><span typeof="mw:File"></span></td></tr><tr><th scope="row" class="infobox-label"><a href="Programming_paradigm" title="Programming paradigm">Paradigm</a></th><td class="infobox-data"><a href="Programming_paradigm#Multi-paradigm" title="Programming paradigm">Multi-paradigm</a>: <a href="Generic_programming" title="Generic programming">generic</a>, <a href="Object-oriented_programming" title="Object-oriented programming">object-oriented</a> (<a href="Class-based_programming" title="Class-based programming">class-based</a>), <a href="Functional_programming" title="Functional programming">functional</a>, <a href="Imperative_programming" title="Imperative programming">imperative</a>, <a href="Reflective_programming" title="Reflective programming">reflective</a>, <a href="Concurrent_computing" title="Concurrent computing">concurrent</a></td></tr><tr><th scope="row" class="infobox-label"><a href="Software_design" title="Software design">Designed&nbsp;by</a></th><td class="infobox-data"><a href="James_Gosling" title="James Gosling">James Gosling</a></td></tr><tr><th scope="row" class="infobox-label"><a href="Software_developer" class="mw-redirect" title="Software developer">Developer</a></th><td class="infobox-data organiser"><a href="Oracle_Corporation" title="Oracle Corporation">Oracle Corporation</a></td></tr><tr><th scope="row" class="infobox-label">First&nbsp;appeared</th><td class="infobox-data">May&nbsp;23, 1995<span style="display:none">&nbsp;(<span class="bday dtstart published updated">1995-05-23</span>)</span><sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup></td></tr><tr><td colspan="2" class="infobox-full-data"></td></tr><tr><th scope="row" class="infobox-label" style="white-space: nowrap;"><a href="Software_release_life_cycle" title="Software release life cycle">Stable release</a></th><td class="infobox-data"><div style="margin:0px;">Java SE 24<sup id="cite_ref-wikidata-e9ac0f1726a2a32c747669049b9b918ac80f4626-v20_2-0" class="reference"><a href="#cite_note-wikidata-e9ac0f1726a2a32c747669049b9b918ac80f4626-v20-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-wikidata-5846d55274e3f50edf1b3f337aadbb187b7cfbd3-v20_3-0" class="reference"><a href="#cite_note-wikidata-5846d55274e3f50edf1b3f337aadbb187b7cfbd3-v20-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup>&nbsp;
/ 18 March 2025<span style="display:none">&nbsp;(<span class="bday dtstart published updated">18 March 2025</span>)</span></div></td></tr><tr style="display:none"><td colspan="2">
</td></tr><tr><th scope="row" class="infobox-label"><a href="Type_system" title="Type system">Typing discipline</a></th><td class="infobox-data"><a href="Type_system" title="Type system">Static, strong, safe</a>, <a href="Nominal_type_system" title="Nominal type system">nominative</a>, <a href="Manifest_typing" title="Manifest typing">manifest</a></td></tr><tr><th scope="row" class="infobox-label"><a href="Memory_management" title="Memory management">Memory management</a></th><td class="infobox-data"><a href="Garbage_collection_(computer_science)" title="Garbage collection (computer science)">Automatic garbage collection</a></td></tr><tr><th scope="row" class="infobox-label"><a href="Filename_extension" title="Filename extension">Filename extensions</a></th><td class="infobox-data">.java, <a href="Java_class_file" title="Java class file">.class</a>, <a href="JAR_(file_format)" title="JAR (file format)">.jar</a>, .jmod, <a href="WAR_(file_format)" title="WAR (file format)">.war</a></td></tr><tr><th scope="row" class="infobox-label">Website</th><td class="infobox-data"><style data-mw-deduplicate="TemplateStyles:r1126788409">
/* start https://en.wikipedia.org/ */


.mw-parser-output .plainlist ol,.mw-parser-output .plainlist ul{line-height:inherit;list-style:none;margin:0;padding:0}.mw-parser-output .plainlist ol li,.mw-parser-output .plainlist ul li{margin-bottom:0}


/* end https://en.wikipedia.org/ */
</style><div class="plainlist"><ul><li><span class="url"><a rel="nofollow" class="external text" href="http://oracle.com/java/">oracle<wbr>.com<wbr>/java<wbr>/</a></span></li><li><span class="url"><a rel="nofollow" class="external text" href="http://java.com">java<wbr>.com</a></span></li><li><span class="url"><a rel="nofollow" class="external text" href="http://dev.java">dev<wbr>.java</a></span></li></ul></div></td></tr><tr><th colspan="2" class="infobox-header" style="background-color: #EEEEEE;">Influenced by</th></tr><tr><td colspan="2" class="infobox-full-data"><a href="CLU_(programming_language)" title="CLU (programming language)">CLU</a>,<sup id="cite_ref-BarbaraLiskov_4-0" class="reference"><a href="#cite_note-BarbaraLiskov-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> <a href="Simula67" class="mw-redirect" title="Simula67">Simula67</a>,<sup id="cite_ref-BarbaraLiskov_4-1" class="reference"><a href="#cite_note-BarbaraLiskov-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> <a href="Lisp_(programming_language)" title="Lisp (programming language)">Lisp</a>,<sup id="cite_ref-BarbaraLiskov_4-2" class="reference"><a href="#cite_note-BarbaraLiskov-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> <a href="Smalltalk" title="Smalltalk">Smalltalk</a>,<sup id="cite_ref-BarbaraLiskov_4-3" class="reference"><a href="#cite_note-BarbaraLiskov-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> <a href="Ada_(programming_language)" title="Ada (programming language)">Ada 83</a>, <a href="C%2B%2B" title="C++">C++</a>,<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup> <a href="C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a>,<sup id="cite_ref-6" class="reference"><a href="#cite_note-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup> <a href="Eiffel_(programming_language)" title="Eiffel (programming language)">Eiffel</a>,<sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup> <a href="Mesa_(programming_language)" title="Mesa (programming language)">Mesa</a>,<sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup> <a href="Modula-3" title="Modula-3">Modula-3</a>,<sup id="cite_ref-9" class="reference"><a href="#cite_note-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup> <a href="Oberon_(programming_language)" title="Oberon (programming language)">Oberon</a>,<sup id="cite_ref-10" class="reference"><a href="#cite_note-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup> <a href="Objective-C" title="Objective-C">Objective-C</a>,<sup id="cite_ref-11" class="reference"><a href="#cite_note-11"><span class="cite-bracket">[</span>11<span class="cite-bracket">]</span></a></sup> <a href="UCSD_Pascal" title="UCSD Pascal">UCSD Pascal</a>,<sup id="cite_ref-12" class="reference"><a href="#cite_note-12"><span class="cite-bracket">[</span>12<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-13" class="reference"><a href="#cite_note-13"><span class="cite-bracket">[</span>13<span class="cite-bracket">]</span></a></sup> <a href="Object_Pascal" title="Object Pascal">Object Pascal</a><sup id="cite_ref-14" class="reference"><a href="#cite_note-14"><span class="cite-bracket">[</span>14<span class="cite-bracket">]</span></a></sup></td></tr><tr><th colspan="2" class="infobox-header" style="background-color: #EEEEEE;">Influenced</th></tr><tr><td colspan="2" class="infobox-full-data"><a href="Ada_(programming_language)" title="Ada (programming language)">Ada 2005</a>, <a href="ArkTS" title="ArkTS">ArkTS</a>, <a href="BeanShell" title="BeanShell">BeanShell</a>, <a href="C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a>, <a href="Chapel_(programming_language)" title="Chapel (programming language)">Chapel</a>,<sup id="cite_ref-chplspec_15-0" class="reference"><a href="#cite_note-chplspec-15"><span class="cite-bracket">[</span>15<span class="cite-bracket">]</span></a></sup> <a href="Clojure" title="Clojure">Clojure</a>, <a href="ECMAScript" title="ECMAScript">ECMAScript</a>, <a href="Fantom_(programming_language)" title="Fantom (programming language)">Fantom</a>, <a href="Gambas" title="Gambas">Gambas</a>,<sup id="cite_ref-gambas_16-0" class="reference"><a href="#cite_note-gambas-16"><span class="cite-bracket">[</span>16<span class="cite-bracket">]</span></a></sup> <a href="Groovy_(programming_language)" class="mw-redirect" title="Groovy (programming language)">Groovy</a>, <a href="Hack_(programming_language)" title="Hack (programming language)">Hack</a>,<sup id="cite_ref-17" class="reference"><a href="#cite_note-17"><span class="cite-bracket">[</span>17<span class="cite-bracket">]</span></a></sup> <a href="Haxe" title="Haxe">Haxe</a>, <a href="Visual_J_Sharp" title="Visual J Sharp">J#</a>, <a href="JavaScript" title="JavaScript">JavaScript</a>, <a href="JS%2B%2B" title="JS++">JS++</a>, <a href="Kotlin_(programming_language)" title="Kotlin (programming language)">Kotlin</a>, <a href="PHP" title="PHP">PHP</a>, <a href="Python_(programming_language)" title="Python (programming language)">Python</a>, <a href="Scala_(programming_language)" title="Scala (programming language)">Scala</a>, <a href="Seed7" title="Seed7">Seed7</a>, <a href="Vala_(programming_language)" title="Vala (programming language)">Vala</a></td></tr><tr><td colspan="2" class="infobox-below hlist" style="border-top: 1px solid #aaa; padding-top: 3px;">
<ul><li><span class="noviewer" typeof="mw:File"></span> <a href="https://en.wikibooks.org/wiki/Java_Programming" class="extiw external" title="wikibooks:Java Programming">Java Programming</a> at Wikibooks</li></ul>
</td></tr></tbody></table>
<p><b>Java</b> is a <a href="High-level_programming_language" title="High-level programming language">high-level</a>, <a href="General-purpose_programming_language" title="General-purpose programming language">general-purpose</a>, <a href="Memory_safety" title="Memory safety">memory-safe</a>, <a href="Object-oriented_programming" title="Object-oriented programming">object-oriented</a> <a href="Programming_language" title="Programming language">programming language</a>. It is intended to let <a href="Programmer" title="Programmer">programmers</a> <i>write once, run anywhere</i> (<a href="Write_once%2C_run_anywhere" title="Write once, run anywhere">WORA</a>),<sup id="cite_ref-18" class="reference"><a href="#cite_note-18"><span class="cite-bracket">[</span>18<span class="cite-bracket">]</span></a></sup> meaning that <a href="Compiler" title="Compiler">compiled</a> Java code can run on all platforms that support Java without the need to recompile.<sup id="cite_ref-design_goals_19-0" class="reference"><a href="#cite_note-design_goals-19"><span class="cite-bracket">[</span>19<span class="cite-bracket">]</span></a></sup> Java applications are typically compiled to <a href="Java_bytecode" title="Java bytecode">bytecode</a> that can run on any <a href="Java_virtual_machine" title="Java virtual machine">Java virtual machine</a> (JVM) regardless of the underlying <a href="Computer_architecture" title="Computer architecture">computer architecture</a>. The <a href="Syntax_(programming_languages)" title="Syntax (programming languages)">syntax</a> of Java is similar to <a href="C_(programming_language)" title="C (programming language)">C</a> and <a href="C%2B%2B" title="C++">C++</a>, but has fewer <a href="Low-level_programming_language" title="Low-level programming language">low-level</a> facilities than either of them. The Java runtime provides dynamic capabilities (such as <a href="Reflective_programming" title="Reflective programming">reflection</a> and runtime code modification) that are typically not available in traditional compiled languages.
</p><p>Java gained popularity shortly after its release, and has been a popular programming language since then.<sup id="cite_ref-20" class="reference"><a href="#cite_note-20"><span class="cite-bracket">[</span>20<span class="cite-bracket">]</span></a></sup> Java was the third most popular programming language in 2022 according to <a href="GitHub" title="GitHub">GitHub</a>.<sup id="cite_ref-21" class="reference"><a href="#cite_note-21"><span class="cite-bracket">[</span>21<span class="cite-bracket">]</span></a></sup> Although still widely popular, there has been a gradual decline in use of Java in recent years with <a href="List_of_JVM_languages" title="List of JVM languages">other languages using JVM</a> gaining popularity.<sup id="cite_ref-:0_22-0" class="reference"><a href="#cite_note-:0-22"><span class="cite-bracket">[</span>22<span class="cite-bracket">]</span></a></sup>
</p><p>Java was designed by <a href="James_Gosling" title="James Gosling">James Gosling</a> at <a href="Sun_Microsystems" title="Sun Microsystems">Sun Microsystems</a>. It was released in May 1995 as a core component of Sun's <a href="Java_(software_platform)" title="Java (software platform)">Java platform</a>. The original and <a href="Reference_implementation" title="Reference implementation">reference implementation</a> Java <a href="Compiler" title="Compiler">compilers</a>, virtual machines, and <a href="Library_(computing)" title="Library (computing)">class libraries</a> were released by Sun under <a href="Proprietary_license" class="mw-redirect" title="Proprietary license">proprietary licenses</a>. As of May 2007, in compliance with the specifications of the <a href="Java_Community_Process" title="Java Community Process">Java Community Process</a>, Sun had <a href="Software_relicensing" title="Software relicensing">relicensed</a> most of its Java technologies under the <a href="GNU_General_Public_License" title="GNU General Public License">GPL-2.0-only</a> license. <a href="Oracle_Corporation" title="Oracle Corporation">Oracle</a>, which bought Sun in 2010, offers its own <a href="HotSpot_(virtual_machine)" title="HotSpot (virtual machine)">HotSpot</a> Java Virtual Machine. However, the official <a href="Reference_implementation" title="Reference implementation">reference implementation</a> is the <a href="OpenJDK" title="OpenJDK">OpenJDK</a> JVM, which is open-source software used by most developers and is the default JVM for almost all Linux distributions.
</p><p><a href="Java_version_history" title="Java version history">Java 24</a> is the version current as of March&nbsp;2025. Java 8, 11, 17, and 21 are <a href="Long-term_support" title="Long-term support">long-term support</a> versions still under maintenance.
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="History">History</h2></div>
<div role="note" class="hatnote navigation-not-searchable">See also: <a href="Java_(software_platform)#History" title="Java (software platform)">Java (software platform) §&nbsp;History</a></div>


<p><a href="James_Gosling" title="James Gosling">James Gosling</a>, Mike Sheridan, and <a href="Patrick_Naughton" class="new" title="Patrick Naughton (page does not exist)">Patrick Naughton</a> initiated the Java language project in June 1991.<sup id="cite_ref-23" class="reference"><a href="#cite_note-23"><span class="cite-bracket">[</span>23<span class="cite-bracket">]</span></a></sup> Java was originally designed for interactive television, but it was too advanced for the digital cable television industry at the time.<sup id="cite_ref-24" class="reference"><a href="#cite_note-24"><span class="cite-bracket">[</span>24<span class="cite-bracket">]</span></a></sup> The language was initially called <i><a href="Oak_(programming_language)" title="Oak (programming language)">Oak</a></i> after an <a href="Oak" title="Oak">oak</a> tree that stood outside Gosling's office. Later the project went by the name <i>Green</i> and was finally renamed <i>Java</i>, from <a href="Java_coffee" class="mw-redirect" title="Java coffee">Java coffee</a>, a type of coffee from <a href="Indonesia" title="Indonesia">Indonesia</a>.<sup id="cite_ref-25" class="reference"><a href="#cite_note-25"><span class="cite-bracket">[</span>25<span class="cite-bracket">]</span></a></sup> Gosling designed Java with a <a href="C_(programming_language)" title="C (programming language)">C</a>/<a href="C%2B%2B" title="C++">C++</a>-style syntax that system and application programmers would find familiar.<sup id="cite_ref-26" class="reference"><a href="#cite_note-26"><span class="cite-bracket">[</span>26<span class="cite-bracket">]</span></a></sup>
</p><p>Sun Microsystems released the first public implementation as Java 1.0 in 1996.<sup id="cite_ref-oraclejavahistory_27-0" class="reference"><a href="#cite_note-oraclejavahistory-27"><span class="cite-bracket">[</span>27<span class="cite-bracket">]</span></a></sup> It promised <a href="Write_once%2C_run_anywhere" title="Write once, run anywhere">write once, run anywhere</a> (WORA) functionality, providing no-cost run-times on popular <a href="Computing_platform" title="Computing platform">platforms</a>. Fairly secure and featuring configurable security, it allowed network- and file-access restrictions. Major <a href="Web_browser" title="Web browser">web browsers</a> soon incorporated the ability to run <a href="Java_applet" title="Java applet">Java applets</a> within web pages, and Java quickly became popular. The Java 1.0 compiler was re-written <a href="Bootstrapping_(compilers)" title="Bootstrapping (compilers)">in Java</a> by <a href="Arthur_van_Hoff" title="Arthur van Hoff">Arthur van Hoff</a> to comply strictly with the Java 1.0 language specification.<sup id="cite_ref-28" class="reference"><a href="#cite_note-28"><span class="cite-bracket">[</span>28<span class="cite-bracket">]</span></a></sup> With the advent of Java 2 (released initially as J2SE 1.2 in December 1998&nbsp;– 1999), new versions had multiple configurations built for different types of platforms. <a href="Java_2_Enterprise_Edition" class="mw-redirect" title="Java 2 Enterprise Edition">J2EE</a> included technologies and APIs for enterprise applications typically run in server environments, while J2ME featured APIs optimized for mobile applications. The desktop version was renamed J2SE. In 2006, for marketing purposes, Sun renamed new J2 versions as <i><a href="Java_Platform%2C_Enterprise_Edition" class="mw-redirect" title="Java Platform, Enterprise Edition">Java EE</a></i>, <i><a href="Java_Platform%2C_Micro_Edition" title="Java Platform, Micro Edition">Java ME</a></i>, and <i><a href="Java_Platform%2C_Standard_Edition" title="Java Platform, Standard Edition">Java SE</a></i>, respectively.
</p><p>In 1997, Sun Microsystems approached the <a href="ISO/IEC_JTC_1" title="ISO/IEC JTC 1">ISO/IEC JTC 1</a> standards body and later the <a href="Ecma_International" title="Ecma International">Ecma International</a> to formalize Java, but it soon withdrew from the process.<sup id="cite_ref-29" class="reference"><a href="#cite_note-29"><span class="cite-bracket">[</span>29<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-30" class="reference"><a href="#cite_note-30"><span class="cite-bracket">[</span>30<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-31" class="reference"><a href="#cite_note-31"><span class="cite-bracket">[</span>31<span class="cite-bracket">]</span></a></sup> Java remains a <a href="De_facto_standard" title="De facto standard"><i>de facto</i> standard</a>, controlled through the <a href="Java_Community_Process" title="Java Community Process">Java Community Process</a>.<sup id="cite_ref-32" class="reference"><a href="#cite_note-32"><span class="cite-bracket">[</span>32<span class="cite-bracket">]</span></a></sup> At one time, Sun made most of its Java implementations available without charge, despite their <a href="Proprietary_software" title="Proprietary software">proprietary software</a> status. Sun generated revenue from Java through the selling of licenses for specialized products such as the Java Enterprise System.
</p><p>On November 13, 2006, Sun released much of its Java virtual machine (JVM) as <a href="Free_and_open-source_software" title="Free and open-source software">free and open-source software</a> (FOSS), under the terms of the <a href="GNU_General_Public_License" title="GNU General Public License">GPL-2.0-only</a> license. On May 8, 2007, Sun finished the process, making all of its JVM's core code available under <a href="Free_software" title="Free software">free software</a>/open-source distribution terms, aside from a small portion of code to which Sun did not hold the copyright.<sup id="cite_ref-33" class="reference"><a href="#cite_note-33"><span class="cite-bracket">[</span>33<span class="cite-bracket">]</span></a></sup>
</p><p>Sun's vice-president Rich Green said that Sun's ideal role with regard to Java was as an <i>evangelist</i>.<sup id="cite_ref-34" class="reference"><a href="#cite_note-34"><span class="cite-bracket">[</span>34<span class="cite-bracket">]</span></a></sup> Following <a href="Oracle_Corporation" title="Oracle Corporation">Oracle Corporation</a>'s acquisition of Sun Microsystems in 2009–10, Oracle has described itself as the steward of Java technology with a relentless commitment to fostering a community of participation and transparency.<sup id="cite_ref-35" class="reference"><a href="#cite_note-35"><span class="cite-bracket">[</span>35<span class="cite-bracket">]</span></a></sup> This did not prevent Oracle from filing a lawsuit against Google shortly after that for using Java inside the <a href="Android_SDK" title="Android SDK">Android SDK</a> (see the <i><a href="#Android">Android</a></i> section).
</p><p>On April 2, 2010, James Gosling resigned from <a href="Oracle_Corporation" title="Oracle Corporation">Oracle</a>.<sup id="cite_ref-36" class="reference"><a href="#cite_note-36"><span class="cite-bracket">[</span>36<span class="cite-bracket">]</span></a></sup>
</p><p>In January 2016, Oracle announced that Java run-time environments based on JDK 9 will discontinue the browser plugin.<sup id="cite_ref-37" class="reference"><a href="#cite_note-37"><span class="cite-bracket">[</span>37<span class="cite-bracket">]</span></a></sup>
</p><p>Java software runs on most devices from laptops to <a href="Data_center" title="Data center">data centers</a>, <a href="Video_game_console" title="Video game console">game consoles</a> to scientific <a href="Supercomputer" title="Supercomputer">supercomputers</a>.<sup id="cite_ref-38" class="reference"><a href="#cite_note-38"><span class="cite-bracket">[</span>38<span class="cite-bracket">]</span></a></sup>
</p><p><a href="Oracle_Corporation" title="Oracle Corporation">Oracle</a> (and others) highly recommend uninstalling outdated and unsupported versions of Java, due to unresolved security issues in older versions.<sup id="cite_ref-39" class="reference"><a href="#cite_note-39"><span class="cite-bracket">[</span>39<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading3"><h3 id="Principles">Principles</h3></div>
<p>There were five primary goals in creating the Java language:<sup id="cite_ref-design_goals_19-1" class="reference"><a href="#cite_note-design_goals-19"><span class="cite-bracket">[</span>19<span class="cite-bracket">]</span></a></sup>
</p>
<ol><li>It must be simple, <a href="Object-oriented_programming" title="Object-oriented programming">object-oriented</a>, and familiar.</li>
<li>It must be <a href="Robustness_(computer_science)" title="Robustness (computer science)">robust</a> and secure.</li>
<li>It must be architecture-neutral and portable.</li>
<li>It must execute with high performance.</li>
<li>It must be <a href="Interpreter_(computing)" title="Interpreter (computing)">interpreted</a>, <a href="Thread_(computing)" title="Thread (computing)">threaded</a>, and <a href="Dynamic_programming_language" title="Dynamic programming language">dynamic</a>.</li></ol>
<div class="mw-heading mw-heading3"><h3 id="Versions">Versions</h3></div>
<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="Java_version_history" title="Java version history">Java version history</a></div>
<p>As of November&nbsp;2024, Java 8, 11, 17, and 21 are supported as <a href="Long-term_support" title="Long-term support">long-term support</a> (LTS) versions, with Java 25, releasing in September 2025, as the next scheduled LTS version.<sup id="cite_ref-40" class="reference"><a href="#cite_note-40"><span class="cite-bracket">[</span>40<span class="cite-bracket">]</span></a></sup>
</p><p>Oracle released the last zero-cost public update for the <a href="Legacy_system" title="Legacy system">legacy</a> version <a href="Java_8" class="mw-redirect" title="Java 8">Java 8</a> LTS in January 2019 for commercial use, although it will otherwise still support Java&nbsp;8 with public updates for personal use indefinitely. Other vendors such as <a href="Adoptium" title="Adoptium">Adoptium</a> continue to offer free builds of OpenJDK's long-term support (LTS) versions. These builds may include additional security patches and bug fixes.<sup id="cite_ref-41" class="reference"><a href="#cite_note-41"><span class="cite-bracket">[</span>41<span class="cite-bracket">]</span></a></sup>
</p><p>Major release versions of Java, along with their release dates:
</p>
<table class="wikitable">
<tbody><tr>
<th>Version</th>
<th>Date
</th></tr>
<tr>
<td>JDK <a href="Beta_version" class="mw-redirect" title="Beta version">Beta</a></td>
<td>1995
</td></tr>
<tr>
<td>JDK 1.0</td>
<td>January 23, 1996<sup id="cite_ref-42" class="reference"><a href="#cite_note-42"><span class="cite-bracket">[</span>42<span class="cite-bracket">]</span></a></sup>
</td></tr>
<tr>
<td>JDK 1.1</td>
<td>February 19, 1997
</td></tr>
<tr>
<td>J2SE 1.2</td>
<td>December 8, 1998
</td></tr>
<tr>
<td>J2SE 1.3</td>
<td>May 8, 2000
</td></tr>
<tr>
<td>J2SE 1.4</td>
<td>February 6, 2002
</td></tr>
<tr>
<td>J2SE 5.0</td>
<td>September 30, 2004
</td></tr>
<tr>
<td>Java SE 6</td>
<td>December 11, 2006
</td></tr>
<tr>
<td>Java SE 7</td>
<td>July 28, 2011
</td></tr>
<tr>
<td>Java SE 8 (LTS)</td>
<td>March 18, 2014
</td></tr>
<tr>
<td>Java SE 9</td>
<td>September 21, 2017
</td></tr>
<tr>
<td>Java SE 10</td>
<td>March 20, 2018
</td></tr>
<tr>
<td>Java SE 11 (LTS)</td>
<td>September 25, 2018<sup id="cite_ref-43" class="reference"><a href="#cite_note-43"><span class="cite-bracket">[</span>43<span class="cite-bracket">]</span></a></sup>
</td></tr>
<tr>
<td>Java SE 12</td>
<td>March 19, 2019
</td></tr>
<tr>
<td>Java SE 13</td>
<td>September 17, 2019
</td></tr>
<tr>
<td>Java SE 14</td>
<td>March 17, 2020
</td></tr>
<tr>
<td>Java SE 15</td>
<td>September 15, 2020<sup id="cite_ref-44" class="reference"><a href="#cite_note-44"><span class="cite-bracket">[</span>44<span class="cite-bracket">]</span></a></sup>
</td></tr>
<tr>
<td>Java SE 16</td>
<td>March 16, 2021
</td></tr>
<tr>
<td>Java SE 17 (LTS)</td>
<td>September 14, 2021
</td></tr>
<tr>
<td>Java SE 18</td>
<td>March 22, 2022
</td></tr>
<tr>
<td>Java SE 19</td>
<td>September 20, 2022
</td></tr>
<tr>
<td>Java SE 20</td>
<td>March 21, 2023
</td></tr>
<tr>
<td>Java SE 21 (LTS)</td>
<td>September 19, 2023<sup id="cite_ref-45" class="reference"><a href="#cite_note-45"><span class="cite-bracket">[</span>45<span class="cite-bracket">]</span></a></sup>
</td></tr>
<tr>
<td>Java SE 22</td>
<td>March 19, 2024
</td></tr>
<tr>
<td>Java SE 23</td>
<td>September 17, 2024
</td></tr>
<tr>
<td>Java SE 24</td>
<td>18 March 2025<sup id="cite_ref-jdk24_46-0" class="reference"><a href="#cite_note-jdk24-46"><span class="cite-bracket">[</span>46<span class="cite-bracket">]</span></a></sup>
</td></tr></tbody></table>
<div class="mw-heading mw-heading2"><h2 id="Editions">Editions</h2></div>
<div role="note" class="hatnote navigation-not-searchable">See also: <a href="Free_Java_implementations#Class_library" title="Free Java implementations">Free Java implementations §&nbsp;Class library</a></div>
<style data-mw-deduplicate="TemplateStyles:r1246091330">
/* start https://en.wikipedia.org/ */


.mw-parser-output .sidebar{width:22em;float:right;clear:right;margin:0.5em 0 1em 1em;background:var(--background-color-neutral-subtle,#f8f9fa);border:1px solid var(--border-color-base,#a2a9b1);padding:0.2em;text-align:center;line-height:1.4em;font-size:88%;border-collapse:collapse;display:table}body.skin-minerva .mw-parser-output .sidebar{display:table!important;float:right!important;margin:0.5em 0 1em 1em!important}.mw-parser-output .sidebar-subgroup{width:100%;margin:0;border-spacing:0}.mw-parser-output .sidebar-left{float:left;clear:left;margin:0.5em 1em 1em 0}.mw-parser-output .sidebar-none{float:none;clear:both;margin:0.5em 1em 1em 0}.mw-parser-output .sidebar-outer-title{padding:0 0.4em 0.2em;font-size:125%;line-height:1.2em;font-weight:bold}.mw-parser-output .sidebar-top-image{padding:0.4em}.mw-parser-output .sidebar-top-caption,.mw-parser-output .sidebar-pretitle-with-top-image,.mw-parser-output .sidebar-caption{padding:0.2em 0.4em 0;line-height:1.2em}.mw-parser-output .sidebar-pretitle{padding:0.4em 0.4em 0;line-height:1.2em}.mw-parser-output .sidebar-title,.mw-parser-output .sidebar-title-with-pretitle{padding:0.2em 0.8em;font-size:145%;line-height:1.2em}.mw-parser-output .sidebar-title-with-pretitle{padding:0.1em 0.4em}.mw-parser-output .sidebar-image{padding:0.2em 0.4em 0.4em}.mw-parser-output .sidebar-heading{padding:0.1em 0.4em}.mw-parser-output .sidebar-content{padding:0 0.5em 0.4em}.mw-parser-output .sidebar-content-with-subgroup{padding:0.1em 0.4em 0.2em}.mw-parser-output .sidebar-above,.mw-parser-output .sidebar-below{padding:0.3em 0.8em;font-weight:bold}.mw-parser-output .sidebar-collapse .sidebar-above,.mw-parser-output .sidebar-collapse .sidebar-below{border-top:1px solid #aaa;border-bottom:1px solid #aaa}.mw-parser-output .sidebar-navbar{text-align:right;font-size:115%;padding:0 0.4em 0.4em}.mw-parser-output .sidebar-list-title{padding:0 0.4em;text-align:left;font-weight:bold;line-height:1.6em;font-size:105%}.mw-parser-output .sidebar-list-title-c{padding:0 0.4em;text-align:center;margin:0 3.3em}@media(max-width:640px){body.mediawiki .mw-parser-output .sidebar{width:100%!important;clear:both;float:none!important;margin-left:0!important;margin-right:0!important}}body.skin--responsive .mw-parser-output .sidebar a>img{max-width:none!important}@media screen{html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-list-title,html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle{background:transparent!important}html.skin-theme-clientpref-night .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle a{color:var(--color-progressive)!important}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-list-title,html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle{background:transparent!important}html.skin-theme-clientpref-os .mw-parser-output .sidebar:not(.notheme) .sidebar-title-with-pretitle a{color:var(--color-progressive)!important}}@media print{body.ns-0 .mw-parser-output .sidebar{display:none!important}}


/* end https://en.wikipedia.org/ */
</style><table class="sidebar nomobile nowraplinks"><tbody><tr><th class="sidebar-title"><a href="Java_(software_platform)" title="Java (software platform)">Java platform</a> editions</th></tr><tr><td class="sidebar-image"><span typeof="mw:File"></span></td></tr><tr><td class="sidebar-content" style="text-align: left">
<ul><li><a href="Java_Card" title="Java Card">Java Card</a></li>
<li><a href="Java_Platform%2C_Micro_Edition" title="Java Platform, Micro Edition">Java ME</a> (Micro Edition)</li>
<li><a href="Java_Platform%2C_Standard_Edition" title="Java Platform, Standard Edition">Java SE</a> (Standard Edition)</li>
<li><a href="Jakarta_EE" title="Jakarta EE">Jakarta EE</a> (Enterprise Edition)</li>
<li><a href="JavaFX" title="JavaFX">JavaFX</a> (bundled in Oracle's JDK from versions 8 to 10 but separately since 11)</li>
<li><a href="PersonalJava" title="PersonalJava">PersonalJava</a> (Discontinued)</li></ul></td>
</tr><tr><td class="sidebar-navbar"><style data-mw-deduplicate="TemplateStyles:r1239400231">
/* start https://en.wikipedia.org/ */


.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}


/* end https://en.wikipedia.org/ */
</style></td></tr></tbody></table>
<p>Sun has defined and supports four editions of Java targeting different application environments and segmented many of its <a href="Application_programming_interface" class="mw-redirect" title="Application programming interface">APIs</a> so that they belong to one of the platforms. The platforms are:
</p>
<ul><li><a href="Java_Card" title="Java Card">Java Card</a> for smart-cards.<sup id="cite_ref-java_card_47-0" class="reference"><a href="#cite_note-java_card-47"><span class="cite-bracket">[</span>47<span class="cite-bracket">]</span></a></sup></li>
<li><a href="Java_Platform%2C_Micro_Edition" title="Java Platform, Micro Edition">Java Platform, Micro Edition</a> (Java ME) – targeting environments with limited resources.<sup id="cite_ref-java_me_48-0" class="reference"><a href="#cite_note-java_me-48"><span class="cite-bracket">[</span>48<span class="cite-bracket">]</span></a></sup></li>
<li><a href="Java_Platform%2C_Standard_Edition" title="Java Platform, Standard Edition">Java Platform, Standard Edition</a> (Java SE) – targeting workstation environments.<sup id="cite_ref-java_se_49-0" class="reference"><a href="#cite_note-java_se-49"><span class="cite-bracket">[</span>49<span class="cite-bracket">]</span></a></sup></li>
<li><a href="Java_Platform%2C_Enterprise_Edition" class="mw-redirect" title="Java Platform, Enterprise Edition">Java Platform, Enterprise Edition</a> (Java EE) – targeting large distributed enterprise or Internet environments.<sup id="cite_ref-java_ee_50-0" class="reference"><a href="#cite_note-java_ee-50"><span class="cite-bracket">[</span>50<span class="cite-bracket">]</span></a></sup></li></ul>
<p>The <a href="Class_(computer_programming)" title="Class (computer programming)">classes</a> in the Java APIs are organized into separate groups called <a href="Java_package" title="Java package">packages</a>. Each package contains a set of related <a href="Interface_(Java)" title="Interface (Java)">interfaces</a>, classes, subpackages and <a href="Exception_handling" title="Exception handling">exceptions</a>.
</p><p>Sun also provided an edition called <a href="PersonalJava" title="PersonalJava">Personal Java</a> that has been superseded by later, standards-based Java ME configuration-profile pairings.
</p>
<div class="mw-heading mw-heading2"><h2 id="Execution_system">Execution system</h2></div>
<div class="mw-heading mw-heading3"><h3 id="Java_JVM_and_bytecode">Java JVM and bytecode</h3></div>
<div role="note" class="hatnote navigation-not-searchable">Main articles: <a href="Java_(software_platform)" title="Java (software platform)">Java (software platform)</a> and <a href="Java_virtual_machine" title="Java virtual machine">Java virtual machine</a></div>
<p>One design goal of Java is <a href="Software_portability" title="Software portability">portability</a>, which means that programs written for the Java platform must run similarly on any combination of hardware and operating system with adequate run time support. This is achieved by compiling the Java language code to an intermediate representation called <a href="Java_bytecode" title="Java bytecode">Java bytecode</a>, instead of directly to architecture-specific <a href="Machine_code" title="Machine code">machine code</a>. Java bytecode instructions are analogous to machine code, but they are intended to be executed by a <a href="Virtual_machine" title="Virtual machine">virtual machine</a> (VM) written specifically for the host hardware. <a href="End_user" title="End user">End-users</a> commonly use a <a href="Java_virtual_machine" title="Java virtual machine">Java Runtime Environment</a> (JRE) installed on their device for standalone Java applications or a web browser for <a href="Java_applet" title="Java applet">Java applets</a>.
</p><p>Standard libraries provide a generic way to access host-specific features such as graphics, <a href="Thread_(computing)" title="Thread (computing)">threading</a>, and <a href="Computer_network" title="Computer network">networking</a>.
</p><p>The use of universal bytecode makes porting simple. However, the overhead of <a href="Interpreter_(computing)" title="Interpreter (computing)">interpreting</a> bytecode into machine instructions made interpreted programs almost always run more slowly than native <a href="Executable" title="Executable">executables</a>. <a href="Just-in-time_compilation" title="Just-in-time compilation">Just-in-time</a> (JIT) compilers that compile byte-codes to machine code during runtime were introduced from an early stage. Java's Hotspot compiler is actually two compilers in one; and with <a href="GraalVM" title="GraalVM">GraalVM</a> (included in e.g. Java 11, but removed as of Java 16) allowing tiered compilation.<sup id="cite_ref-51" class="reference"><a href="#cite_note-51"><span class="cite-bracket">[</span>51<span class="cite-bracket">]</span></a></sup> Java itself is platform-independent and is adapted to the particular platform it is to run on by a <a href="Java_virtual_machine" title="Java virtual machine">Java virtual machine</a> (JVM), which translates the <a href="Java_bytecode" title="Java bytecode">Java bytecode</a> into the platform's machine language.<sup id="cite_ref-52" class="reference"><a href="#cite_note-52"><span class="cite-bracket">[</span>52<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading4"><h4 id="Performance">Performance</h4></div>
<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="Java_performance" title="Java performance">Java performance</a></div>
<p>Programs written in Java have a reputation for being slower and requiring more memory than those written in <a href="C%2B%2B" title="C++">C++</a>.<sup id="cite_ref-Jelovic_53-0" class="reference"><a href="#cite_note-Jelovic-53"><span class="cite-bracket">[</span>53<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-54" class="reference"><a href="#cite_note-54"><span class="cite-bracket">[</span>54<span class="cite-bracket">]</span></a></sup> However, Java programs' execution speed improved significantly with the introduction of <a href="Just-in-time_compilation" title="Just-in-time compilation">just-in-time compilation</a> in 1997/1998 for <a href="Java_version_history" title="Java version history">Java&nbsp;1.1</a>,<sup id="cite_ref-55" class="reference"><a href="#cite_note-55"><span class="cite-bracket">[</span>55<span class="cite-bracket">]</span></a></sup> the addition of language features supporting better code analysis (such as inner classes, the StringBuilder class, optional assertions, etc.), and optimizations in the Java virtual machine, such as <a href="HotSpot_(virtual_machine)" title="HotSpot (virtual machine)">HotSpot</a> becoming Sun's default JVM in 2000. With Java&nbsp;1.5, the performance was improved with the addition of the <code class="mw-highlight mw-highlight-lang-text mw-content-ltr" style="" dir="ltr">java.util.concurrent</code> package, including <a href="Lock-free" class="mw-redirect" title="Lock-free">lock-free</a> implementations of the <a href="Java_ConcurrentMap" title="Java ConcurrentMap">ConcurrentMaps</a> and other multi-core collections, and it was improved further with Java&nbsp;1.6.
</p>
<div class="mw-heading mw-heading3"><h3 id="Non-JVM">Non-JVM</h3></div>
<p>Some platforms offer direct hardware support for Java; there are micro controllers that can run Java bytecode in hardware instead of a software Java virtual machine,<sup id="cite_ref-56" class="reference"><a href="#cite_note-56"><span class="cite-bracket">[</span>56<span class="cite-bracket">]</span></a></sup> and some <a href="ARM_architecture_family" title="ARM architecture family">ARM</a>-based processors could have hardware support for executing Java bytecode through their <a href="Jazelle" title="Jazelle">Jazelle</a> option, though support has mostly been dropped in current implementations of ARM.
</p>
<div class="mw-heading mw-heading3"><h3 id="Automatic_memory_management">Automatic memory management</h3></div>
<p>Java uses an <a href="Garbage_collection_(computer_science)" title="Garbage collection (computer science)">automatic garbage collector</a> to manage memory in the <a href="Object_lifetime" title="Object lifetime">object lifecycle</a>. The programmer determines when objects are created, and the Java runtime is responsible for recovering the memory once objects are no longer in use. Once no references to an object remain, the <a href="Unreachable_memory" title="Unreachable memory">unreachable memory</a> becomes eligible to be freed automatically by the garbage collector. Something similar to a <a href="Memory_leak" title="Memory leak">memory leak</a> may still occur if a programmer's code holds a reference to an object that is no longer needed, typically when objects that are no longer needed are stored in containers that are still in use.<sup id="cite_ref-FOOTNOTEBloch201826-28§Item_7:_Eliminate_obsolete_object_references_57-0" class="reference"><a href="#cite_note-FOOTNOTEBloch201826-28§Item_7:_Eliminate_obsolete_object_references-57"><span class="cite-bracket">[</span>57<span class="cite-bracket">]</span></a></sup> If methods for a non-existent object are called, a <a href="Null_pointer" title="Null pointer">null pointer</a> exception is thrown.<sup id="cite_ref-58" class="reference"><a href="#cite_note-58"><span class="cite-bracket">[</span>58<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-59" class="reference"><a href="#cite_note-59"><span class="cite-bracket">[</span>59<span class="cite-bracket">]</span></a></sup>
</p><p>One of the ideas behind Java's automatic memory management model is that programmers can be spared the burden of having to perform manual memory management. In some languages, memory for the creation of objects is implicitly allocated on the <a href="Stack_(abstract_data_type)" title="Stack (abstract data type)">stack</a> or explicitly allocated and deallocated from the <a href="Memory_management#DYNAMIC" title="Memory management">heap</a>. In the latter case, the responsibility of managing memory resides with the programmer. If the program does not deallocate an object, a <a href="Memory_leak" title="Memory leak">memory leak</a> occurs.<sup id="cite_ref-FOOTNOTEBloch201826-28§Item_7:_Eliminate_obsolete_object_references_57-1" class="reference"><a href="#cite_note-FOOTNOTEBloch201826-28§Item_7:_Eliminate_obsolete_object_references-57"><span class="cite-bracket">[</span>57<span class="cite-bracket">]</span></a></sup> If the program attempts to access or deallocate memory that has already been deallocated, the result is undefined and difficult to predict, and the program is likely to become unstable or crash. This can be partially remedied by the use of <a href="Smart_pointer" title="Smart pointer">smart pointers</a>, but these add overhead and complexity. Garbage collection does not prevent <a href="Logical_address" title="Logical address">logical memory</a> leaks, i.e. those where the memory is still referenced but never used.<sup id="cite_ref-FOOTNOTEBloch201826-28§Item_7:_Eliminate_obsolete_object_references_57-2" class="reference"><a href="#cite_note-FOOTNOTEBloch201826-28§Item_7:_Eliminate_obsolete_object_references-57"><span class="cite-bracket">[</span>57<span class="cite-bracket">]</span></a></sup>
</p><p>Garbage collection may happen at any time. Ideally, it will occur when a program is idle. It is guaranteed to be triggered if there is insufficient free memory on the heap to allocate a new object; this can cause a program to stall momentarily. Explicit memory management is not possible in Java.
</p><p>Java does not support C/C++ style <a href="Pointer_(computer_programming)" title="Pointer (computer programming)">pointer arithmetic</a>,<sup id="cite_ref-60" class="reference"><a href="#cite_note-60"><span class="cite-bracket">[</span>60<span class="cite-bracket">]</span></a></sup> where object addresses can be arithmetically manipulated (e.g. by adding or subtracting an offset). This allows the garbage collector to relocate referenced objects and ensures type safety and security.
</p><p>As in C++ and some other object-oriented languages, variables of Java's <a href="Primitive_data_type" title="Primitive data type">primitive data types</a> are either stored directly in fields (for objects) or on the <a href="Stack-based_memory_allocation" title="Stack-based memory allocation">stack</a> (for methods) rather than on the heap, as is commonly true for non-primitive data types (but see <a href="Escape_analysis" title="Escape analysis">escape analysis</a>). This was a conscious decision by Java's designers for performance reasons.
</p><p>Java contains multiple types of garbage collectors. Since Java 9, HotSpot uses the <a href="Garbage-first_collector" title="Garbage-first collector">Garbage First Garbage Collector</a> (G1GC) as the default.<sup id="cite_ref-61" class="reference"><a href="#cite_note-61"><span class="cite-bracket">[</span>61<span class="cite-bracket">]</span></a></sup> However, there are also several other garbage collectors that can be used to manage the heap, such as the Z Garbage Collector (ZGC) introduced in Java 11, and Shenandoah GC, introduced in Java 12 but unavailable in Oracle-produced OpenJDK builds. Shenandoah is instead available in third-party builds of OpenJDK, such as <a href="Adoptium#Eclipse_Temurin" title="Adoptium">Eclipse Temurin</a>. For most applications in Java, G1GC is sufficient. In prior versions of Java, such as Java 8, the <a rel="nofollow" class="external text" href="https://docs.oracle.com/javase/8/docs/technotes/guides/vm/gctuning/parallel.html">Parallel Garbage Collector</a> was used as the default garbage collector.
</p><p>Having solved the memory management problem does not relieve the programmer of the burden of handling properly other kinds of resources, like network or database connections, file handles, etc., especially in the presence of exceptions.
</p>
<div class="mw-heading mw-heading2"><h2 id="Syntax">Syntax</h2></div>
<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="Java_syntax" title="Java syntax">Java syntax</a></div>

<p>The syntax of Java is largely influenced by <a href="C%2B%2B" title="C++">C++</a> and <a href="C_(programming_language)" title="C (programming language)">C</a>. Unlike C++, which combines the syntax for structured, generic, and object-oriented programming, Java was built almost exclusively as an object-oriented language.<sup id="cite_ref-design_goals_19-2" class="reference"><a href="#cite_note-design_goals-19"><span class="cite-bracket">[</span>19<span class="cite-bracket">]</span></a></sup> All code is written inside classes, and every data item is an object, with the exception of the primitive data types, (i.e. integers, floating-point numbers, <a href="Boolean_data_type" title="Boolean data type">boolean values</a>, and characters), which are not objects for performance reasons. Java reuses some popular aspects of C++ (such as the <code class="mw-highlight mw-highlight-lang-java mw-content-ltr" dir="ltr"><span class="n">printf</span></code> method).
</p><p>Unlike C++, Java does not support <a href="Operator_overloading" title="Operator overloading">operator overloading</a><sup id="cite_ref-msdn_operator_overloading_62-0" class="reference"><a href="#cite_note-msdn_operator_overloading-62"><span class="cite-bracket">[</span>62<span class="cite-bracket">]</span></a></sup> or <a href="Multiple_inheritance" title="Multiple inheritance">multiple inheritance</a> for classes, though multiple inheritance is supported for <a href="Interface_(Java)" title="Interface (Java)">interfaces</a>.<sup id="cite_ref-oracle_multiple_inheritance_63-0" class="reference"><a href="#cite_note-oracle_multiple_inheritance-63"><span class="cite-bracket">[</span>63<span class="cite-bracket">]</span></a></sup>
</p><p>Java uses <a href="Comment_(computer_programming)" title="Comment (computer programming)">comments</a> similar to those of C++. There are three different styles of comments: a single line style marked with two slashes (<code>//</code>), a multiple line style opened with <code>/*</code> and closed with <code>*/</code>, and the <a href="Javadoc" title="Javadoc">Javadoc</a> commenting style opened with <code>/**</code> and closed with <code>*/</code>. The Javadoc style of commenting allows the user to run the Javadoc executable to create documentation for the program and can be read by some <a href="Integrated_development_environment" title="Integrated development environment">integrated development environments</a> (IDEs) such as <a href="Eclipse_(software)" title="Eclipse (software)">Eclipse</a> to allow developers to access documentation within the IDE.
</p>
<div class="mw-heading mw-heading3"><h3 id="Hello_world">Hello world</h3></div>
<p>The following is a simple example of a <a href="%22Hello%2C_World!%22_program" title="&quot;Hello, World!&quot; program">"Hello, World!" program</a> that writes a message to the <a href="Standard_output" class="mw-redirect" title="Standard output">standard output</a>:
</p>
<div class="mw-highlight mw-highlight-lang-java mw-content-ltr mw-highlight-lines" dir="ltr"><pre><span class="kd">public</span><span class="w"> </span><span class="kd">class</span> <span class="nc">Example</span><span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="kd">public</span><span class="w"> </span><span class="kd">static</span><span class="w"> </span><span class="kt">void</span><span class="w"> </span><span class="nf">main</span><span class="p">(</span><span class="n">String</span><span class="o">[]</span><span class="w"> </span><span class="n">args</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
<span class="w"> </span><span class="n">System</span><span class="p">.</span><span class="na">out</span><span class="p">.</span><span class="na">println</span><span class="p">(</span><span class="s">"Hello World!"</span><span class="p">);</span>
<span class="w"> </span><span class="p">}</span>
<span class="p">}</span>
</pre></div>
<div class="mw-heading mw-heading2"><h2 id="Special_classes">Special classes</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1305433154">
/* start https://en.wikipedia.org/ */


.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}@media print{body.ns-0 .mw-parser-output .ambox{display:none!important}}


/* end https://en.wikipedia.org/ */
</style>
<div class="mw-heading mw-heading3"><h3 id="Applet">Applet</h3></div>
<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="Java_applet" title="Java applet">Java applet</a></div>
<p>Java applets were programs embedded in other applications, mainly in web pages displayed in web browsers. The Java applet API was deprecated with the release of Java&nbsp;9 in 2017.<sup id="cite_ref-64" class="reference"><a href="#cite_note-64"><span class="cite-bracket">[</span>64<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-65" class="reference"><a href="#cite_note-65"><span class="cite-bracket">[</span>65<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading3"><h3 id="Servlet">Servlet</h3></div>
<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="Java_servlet" class="mw-redirect" title="Java servlet">Java servlet</a></div>
<p><a href="Java_servlet" class="mw-redirect" title="Java servlet">Java servlet</a> technology provides Web developers with a simple, consistent mechanism for extending the functionality of a Web server and for accessing existing business systems. Servlets are <a href="Server-side" class="mw-redirect" title="Server-side">server-side</a> Java EE components that generate responses to requests from <a href="Client_(computing)" title="Client (computing)">clients</a>. Most of the time, this means generating <a href="HTML" title="HTML">HTML</a> pages in response to <a href="Hypertext_Transfer_Protocol" class="mw-redirect" title="Hypertext Transfer Protocol">HTTP</a> requests, although there are a number of other standard servlet classes available, for example for <a href="WebSocket" title="WebSocket">WebSocket</a> communication.
</p><p>The Java servlet API has to some extent been superseded (but still used under the hood) by two standard Java technologies for web services:
</p>
<ul><li>the <a href="Java_API_for_RESTful_Web_Services" class="mw-redirect" title="Java API for RESTful Web Services">Java API for RESTful Web Services</a> (JAX-RS 2.0) useful for AJAX, JSON and REST services, and</li>
<li>the <a href="Java_API_for_XML_Web_Services" class="mw-redirect" title="Java API for XML Web Services">Java API for XML Web Services</a> (JAX-WS) useful for <a href="SOAP" title="SOAP">SOAP</a> <a href="Web_Service" class="mw-redirect" title="Web Service">Web Services</a>.</li></ul>
<p>Typical implementations of these APIs on Application Servers or Servlet Containers use a standard servlet for handling all interactions with the <a href="HTTP" title="HTTP">HTTP</a> requests and responses that delegate to the web service methods for the actual business logic.
</p>
<div class="mw-heading mw-heading3"><h3 id="JavaServer_Pages">JavaServer Pages</h3></div>
<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="JavaServer_Pages" class="mw-redirect" title="JavaServer Pages">JavaServer Pages</a></div>
<p>JavaServer Pages (<a href="Jakarta_Server_Pages" title="Jakarta Server Pages">JSP</a>) are <a href="Server-side" class="mw-redirect" title="Server-side">server-side</a> Java EE components that generate responses, typically <a href="HTML" title="HTML">HTML</a> pages, to <a href="Hypertext_Transfer_Protocol" class="mw-redirect" title="Hypertext Transfer Protocol">HTTP</a> requests from <a href="Client_(computing)" title="Client (computing)">clients</a>. JSPs embed Java code in an HTML page by using the special <a href="Delimiter" title="Delimiter">delimiters</a> <code>&lt;%</code> and <code>%&gt;</code>. A JSP is compiled to a Java <i>servlet</i>, a Java application in its own right, the first time it is accessed. After that, the generated servlet creates the response.<sup id="cite_ref-66" class="reference"><a href="#cite_note-66"><span class="cite-bracket">[</span>66<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading3"><h3 id="Swing_application">Swing application</h3></div>
<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="Swing_(Java)" title="Swing (Java)">Swing (Java)</a></div>
<p><a href="Swing_(Java)" title="Swing (Java)">Swing</a> is a graphical user interface <a href="Library_(computing)" title="Library (computing)">library</a> for the Java SE platform. It is possible to specify a different look and feel through the <a href="Pluggable_look_and_feel" title="Pluggable look and feel">pluggable look and feel</a> system of Swing. Clones of <a href="Microsoft_Windows" title="Microsoft Windows">Windows</a>, <a href="GTK%2B" class="mw-redirect" title="GTK+">GTK+</a>, and <a href="Motif_(software)" title="Motif (software)">Motif</a> are supplied by Sun. <a href="Apple_Inc." title="Apple Inc.">Apple</a> also provides an <a href="Aqua_(user_interface)" title="Aqua (user interface)">Aqua</a> look and feel for <a href="MacOS" title="MacOS">macOS</a>. Where prior implementations of these looks and feels may have been considered lacking, Swing in Java SE 6 addresses this problem by using more native <a href="Graphical_control_element" class="mw-redirect" title="Graphical control element">GUI widget</a> drawing routines of the underlying platforms.<sup id="cite_ref-67" class="reference"><a href="#cite_note-67"><span class="cite-bracket">[</span>67<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading3"><h3 id="JavaFX_application">JavaFX application</h3></div>
<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="JavaFX" title="JavaFX">JavaFX</a></div>
<p><a href="JavaFX" title="JavaFX">JavaFX</a> is a <a href="Computing_platform" title="Computing platform">software platform</a> for creating and delivering <a href="Application_software" title="Application software">desktop applications</a>, as well as <a href="Rich_web_application" class="mw-redirect" title="Rich web application">rich web applications</a> that can run across a wide variety of devices. JavaFX is intended to replace <a href="Swing_(Java)" title="Swing (Java)">Swing</a> as the standard <a href="Graphical_user_interface" title="Graphical user interface">graphical user interface</a> (GUI) library for <a href="Java_Platform%2C_Standard_Edition" title="Java Platform, Standard Edition">Java SE</a>, but since JDK 11 JavaFX has not been in the core JDK and instead in a separate module.<sup id="cite_ref-68" class="reference"><a href="#cite_note-68"><span class="cite-bracket">[</span>68<span class="cite-bracket">]</span></a></sup> JavaFX has support for <a href="Desktop_computer" title="Desktop computer">desktop computers</a> and <a href="Web_browser" title="Web browser">web browsers</a> on <a href="Microsoft_Windows" title="Microsoft Windows">Microsoft Windows</a>, <a href="Linux" title="Linux">Linux</a>, and <a href="MacOS" title="MacOS">macOS</a>. JavaFX does not have support for native OS look and feels.<sup id="cite_ref-69" class="reference"><a href="#cite_note-69"><span class="cite-bracket">[</span>69<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading3"><h3 id="Generics">Generics</h3></div>
<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="Generics_in_Java" title="Generics in Java">Generics in Java</a></div>
<p>In 2004, <a href="Generic_programming" title="Generic programming">generics</a> were added to the Java language, as part of J2SE 5.0. Prior to the introduction of generics, each variable declaration had to be of a specific type. For container classes, for example, this is a problem because there is no easy way to create a container that accepts only specific types of objects. Either the container operates on all subtypes of a class or interface, usually <code>Object</code>, or a different container class has to be created for each contained class. Generics allow compile-time type checking without having to create many container classes, each containing almost identical code. In addition to enabling more efficient code, certain runtime exceptions are prevented from occurring, by issuing compile-time errors. If Java prevented all runtime type errors (<code>ClassCastException</code>s) from occurring, it would be <a href="Type_safety" title="Type safety">type safe</a>.
</p><p>In 2016, the type system of Java was proven <a href="Soundness" title="Soundness">unsound</a> in that it is possible to use generics to construct classes and methods that allow assignment of an instance of one class to a variable of another unrelated class. Such code is accepted by the compiler, but fails at run time with a class cast exception.<sup id="cite_ref-70" class="reference"><a href="#cite_note-70"><span class="cite-bracket">[</span>70<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="Criticism">Criticism</h2></div>
<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="Criticism_of_Java" title="Criticism of Java">Criticism of Java</a></div>
<p>Criticisms directed at Java include the implementation of generics,<sup id="cite_ref-71" class="reference"><a href="#cite_note-71"><span class="cite-bracket">[</span>71<span class="cite-bracket">]</span></a></sup> speed,<sup id="cite_ref-Jelovic_53-1" class="reference"><a href="#cite_note-Jelovic-53"><span class="cite-bracket">[</span>53<span class="cite-bracket">]</span></a></sup> the handling of unsigned numbers,<sup id="cite_ref-72" class="reference"><a href="#cite_note-72"><span class="cite-bracket">[</span>72<span class="cite-bracket">]</span></a></sup> the implementation of floating-point arithmetic,<sup id="cite_ref-73" class="reference"><a href="#cite_note-73"><span class="cite-bracket">[</span>73<span class="cite-bracket">]</span></a></sup> and a history of security vulnerabilities in the primary Java VM implementation <a href="HotSpot_(virtual_machine)" title="HotSpot (virtual machine)">HotSpot</a>.<sup id="cite_ref-74" class="reference"><a href="#cite_note-74"><span class="cite-bracket">[</span>74<span class="cite-bracket">]</span></a></sup>
Developers have criticized the complexity and verbosity of the Java Persistence API (JPA), a standard part of Java EE. This has led to increased adoption of higher-level abstractions like Spring Data JPA, which aims to simplify database operations and reduce boilerplate code. The growing popularity of such frameworks suggests limitations in the standard JPA implementation's ease-of-use for modern Java development.<sup id="cite_ref-75" class="reference"><a href="#cite_note-75"><span class="cite-bracket">[</span>75<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="Class_libraries">Class libraries</h2></div>
<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="Java_Class_Library" title="Java Class Library">Java Class Library</a></div>
<p>The <a href="Java_Class_Library" title="Java Class Library">Java Class Library</a> is the <a href="Standard_library" title="Standard library">standard library</a>, developed to support application development in Java. It is controlled by <a href="Oracle_Corporation" title="Oracle Corporation">Oracle</a> in cooperation with others through the <a href="Java_Community_Process" title="Java Community Process">Java Community Process</a> program.<sup id="cite_ref-76" class="reference"><a href="#cite_note-76"><span class="cite-bracket">[</span>76<span class="cite-bracket">]</span></a></sup> Companies or individuals participating in this process can influence the design and development of the APIs. This process has been a subject of controversy during the 2010s.<sup id="cite_ref-77" class="reference"><a href="#cite_note-77"><span class="cite-bracket">[</span>77<span class="cite-bracket">]</span></a></sup> The class library contains features such as:
</p>
<ul><li>The core libraries, which include:
<ul><li><a href="Input/output" title="Input/output">Input/output</a> (I/O or IO)<sup id="cite_ref-FOOTNOTEBloch20181–4§&amp;nbsp;1_Introduction_78-0" class="reference"><a href="#cite_note-FOOTNOTEBloch20181–4§&amp;nbsp;1_Introduction-78"><span class="cite-bracket">[</span>78<span class="cite-bracket">]</span></a></sup> and <a href="Non-blocking_I/O_(Java)" title="Non-blocking I/O (Java)">non-blocking I/O</a> (NIO), or IO/NIO<sup id="cite_ref-79" class="reference"><a href="#cite_note-79"><span class="cite-bracket">[</span>79<span class="cite-bracket">]</span></a></sup></li>
<li><a href="Computer_network" title="Computer network">Networking</a><sup id="cite_ref-80" class="reference"><a href="#cite_note-80"><span class="cite-bracket">[</span>80<span class="cite-bracket">]</span></a></sup> (new <a href="User_agent" title="User agent">user agent</a> (HTTP client) since Java 11<sup id="cite_ref-81" class="reference"><a href="#cite_note-81"><span class="cite-bracket">[</span>81<span class="cite-bracket">]</span></a></sup>)</li>
<li><a href="Reflective_programming" title="Reflective programming">Reflective programming</a> (reflection)</li>
<li><a href="Concurrent_computing" title="Concurrent computing">Concurrent computing</a> (concurrency)<sup id="cite_ref-FOOTNOTEBloch20181–4§&amp;nbsp;1_Introduction_78-1" class="reference"><a href="#cite_note-FOOTNOTEBloch20181–4§&amp;nbsp;1_Introduction-78"><span class="cite-bracket">[</span>78<span class="cite-bracket">]</span></a></sup></li>
<li><a href="Generics_in_Java" title="Generics in Java">Generics</a></li>
<li>Scripting, Compiler</li>
<li><a href="Functional_programming" title="Functional programming">Functional programming</a> (<a href="Lambda_(programming)" class="mw-redirect" title="Lambda (programming)">Lambda</a>, streaming)</li>
<li><a href="Java_collections_framework" title="Java collections framework">Collection libraries</a> that implement <a href="Data_structure" title="Data structure">data structures</a> such as <a href="List_(abstract_data_type)" title="List (abstract data type)">lists</a>, <a href="Associative_array" title="Associative array">dictionaries</a>, <a href="Tree_structure" title="Tree structure">trees</a>, <a href="Set_(abstract_data_type)" title="Set (abstract data type)">sets</a>, <a href="Queue_(abstract_data_type)" title="Queue (abstract data type)">queues</a> and <a href="Double-ended_queue" title="Double-ended queue">double-ended queue</a>, or <a href="Stack_(abstract_data_type)" title="Stack (abstract data type)">stacks</a><sup id="cite_ref-collections_82-0" class="reference"><a href="#cite_note-collections-82"><span class="cite-bracket">[</span>82<span class="cite-bracket">]</span></a></sup></li>
<li><a href="XML" title="XML">XML</a> Processing (Parsing, Transforming, Validating) libraries</li>
<li><a href="Computer_security" title="Computer security">Security</a><sup id="cite_ref-security_83-0" class="reference"><a href="#cite_note-security-83"><span class="cite-bracket">[</span>83<span class="cite-bracket">]</span></a></sup></li>
<li><a href="Internationalization_and_localization" title="Internationalization and localization">Internationalization and localization</a> libraries<sup id="cite_ref-i18n_84-0" class="reference"><a href="#cite_note-i18n-84"><span class="cite-bracket">[</span>84<span class="cite-bracket">]</span></a></sup></li></ul></li>
<li>The integration libraries, which allow the application writer to communicate with external systems. These libraries include:
<ul><li>The <a href="Java_Database_Connectivity" title="Java Database Connectivity">Java Database Connectivity</a> (JDBC) <a href="Application_programming_interface" class="mw-redirect" title="Application programming interface">API</a> for database access</li>
<li><a href="Java_Naming_and_Directory_Interface" title="Java Naming and Directory Interface">Java Naming and Directory Interface</a> (JNDI) for lookup and discovery</li>
<li><a href="Java_remote_method_invocation" title="Java remote method invocation">Java remote method invocation</a> (RMI) and <a href="Common_Object_Request_Broker_Architecture" title="Common Object Request Broker Architecture">Common Object Request Broker Architecture</a> (CORBA) for distributed application development</li>
<li><a href="Java_Management_Extensions" title="Java Management Extensions">Java Management Extensions</a> (JMX) for managing and monitoring applications</li></ul></li>
<li><a href="User_interface" title="User interface">User interface</a> libraries, which include:
<ul><li>The (heavyweight, or <a href="Native_(computing)" title="Native (computing)">native</a>) <a href="Abstract_Window_Toolkit" title="Abstract Window Toolkit">Abstract Window Toolkit</a> (AWT), which provides <a href="Graphical_user_interface" title="Graphical user interface">GUI</a> components, the means for laying out those components and the means for handling events from those components</li>
<li>The (lightweight) <a href="Swing_(Java)" title="Swing (Java)">Swing</a> libraries, which are built on AWT but provide (non-native) implementations of the AWT widgetry</li>
<li>APIs for audio capture, processing, and playback</li>
<li><a href="JavaFX" title="JavaFX">JavaFX</a></li></ul></li>
<li>A platform dependent implementation of the Java virtual machine that is the means by which the bytecodes of the Java libraries and third-party applications are executed</li>
<li>Plugins, which enable <a href="Java_applet" title="Java applet">applets</a> to be run in web browsers</li>
<li><a href="Java_Web_Start" title="Java Web Start">Java Web Start</a>, which allows Java applications to be efficiently distributed to <a href="End_user" title="End user">end users</a> across the Internet</li>
<li>Licensing and documentation</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Documentation">Documentation</h2></div>
<div role="note" class="hatnote navigation-not-searchable">Main article: <a href="Javadoc" title="Javadoc">Javadoc</a></div>
<p>Javadoc is a comprehensive documentation system, created by <a href="Sun_Microsystems" title="Sun Microsystems">Sun Microsystems</a>. It provides developers with an organized system for documenting their code. Javadoc comments have an extra asterisk at the beginning, i.e. the delimiters are <code>/**</code> and <code>*/</code>, whereas the normal multi-line comments in Java are delimited by <code>/*</code> and <code>*/</code>, and single-line comments start with <code>//</code>.<sup id="cite_ref-javadoc_comments_85-0" class="reference"><a href="#cite_note-javadoc_comments-85"><span class="cite-bracket">[</span>85<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="Implementations">Implementations</h2></div>
<div role="note" class="hatnote navigation-not-searchable">See also: <a href="Free_Java_implementations" title="Free Java implementations">Free Java implementations</a> and <a href="List_of_Java_compilers" class="mw-redirect" title="List of Java compilers">List of Java compilers</a></div>

<p><a href="Oracle_Corporation" title="Oracle Corporation">Oracle Corporation</a> owns the official implementation of the Java SE platform, due to its acquisition of <a href="Sun_Microsystems" title="Sun Microsystems">Sun Microsystems</a> on January 27, 2010. This implementation is based on the original implementation of Java by Sun. The Oracle implementation is available for <a href="Microsoft_Windows" title="Microsoft Windows">Windows</a>, <a href="MacOS" title="MacOS">macOS</a>, <a href="Linux" title="Linux">Linux</a>, and <a href="Solaris_(operating_system)" class="mw-redirect" title="Solaris (operating system)">Solaris</a>. Because Java lacks any formal standardization recognized by <a href="Ecma_International" title="Ecma International">Ecma International</a>, ISO/IEC, ANSI, or other third-party standards organizations, the Oracle implementation is the <a href="De_facto_standard" title="De facto standard">de facto standard</a>.
</p><p>The Oracle implementation is packaged into two different distributions: The Java Runtime Environment (JRE) which contains the parts of the Java SE platform required to run Java programs and is intended for end users, and the <a href="Java_Development_Kit" title="Java Development Kit">Java Development Kit</a> (JDK), which is intended for software developers and includes development tools such as the <a href="Java_compiler" title="Java compiler">Java compiler</a>, <a href="Javadoc" title="Javadoc">Javadoc</a>, <a href="JAR_(file_format)" title="JAR (file format)">Jar</a>, and a <a href="Debugger" title="Debugger">debugger</a>. Oracle has also released <a href="GraalVM" title="GraalVM">GraalVM</a>, a high performance Java dynamic compiler and interpreter.
</p><p><a href="OpenJDK" title="OpenJDK">OpenJDK</a> is another Java SE implementation that is licensed under the GNU GPL. The implementation started when Sun began releasing the Java source code under the GPL. As of Java SE 7, OpenJDK is the official Java reference implementation.
</p><p>The goal of Java is to make all implementations of Java compatible. Historically, Sun's trademark license for usage of the Java brand insists that all implementations be <i>compatible</i>. This resulted in a legal dispute with <a href="Microsoft" title="Microsoft">Microsoft</a> after Sun claimed that the Microsoft implementation did not support <a href="Java_remote_method_invocation" title="Java remote method invocation">Java remote method invocation</a> (RMI) or <a href="Java_Native_Interface" title="Java Native Interface">Java Native Interface</a> (JNI) and had added platform-specific features of their own. Sun sued in 1997, and, in 2001, won a settlement of US$20&nbsp;million, as well as a court order enforcing the terms of the license from Sun.<sup id="cite_ref-86" class="reference"><a href="#cite_note-86"><span class="cite-bracket">[</span>86<span class="cite-bracket">]</span></a></sup> As a result, Microsoft no longer ships Java with <a href="Microsoft_Windows" title="Microsoft Windows">Windows</a>.
</p><p>Platform-independent Java is essential to <a href="Java_Platform%2C_Enterprise_Edition" class="mw-redirect" title="Java Platform, Enterprise Edition">Java EE</a>, and an even more rigorous validation is required to certify an implementation. This environment enables portable server-side applications.
</p>
<div class="mw-heading mw-heading2"><h2 id="Use_outside_the_Java_platform">Use outside the Java platform</h2></div>
<p>The Java programming language requires the presence of a software platform in order for compiled programs to be executed.
</p><p>Oracle supplies the <a href="Java_platform" class="mw-redirect" title="Java platform">Java platform</a> for use with Java. The <a href="Android_SDK" title="Android SDK">Android SDK</a> is an alternative software platform, used primarily for developing <a href="Android_application" class="mw-redirect" title="Android application">Android applications</a> with its own GUI system.
</p>
<div class="mw-heading mw-heading3"><h3 id="Android">Android</h3></div>
<p>The Java language is a key pillar in <a href="Android_(operating_system)" title="Android (operating system)">Android</a>, an <a href="Open_source_software" class="mw-redirect" title="Open source software">open source</a> <a href="Mobile_operating_system" title="Mobile operating system">mobile operating system</a>. Although Android, built on the <a href="Linux_kernel" title="Linux kernel">Linux kernel</a>, is written largely in C, the <a href="Android_software_development#SDK" title="Android software development">Android SDK</a> uses the Java language as the basis for Android applications but does not use any of its standard GUI, SE, ME or other established Java standards.<sup id="cite_ref-87" class="reference"><a href="#cite_note-87"><span class="cite-bracket">[</span>87<span class="cite-bracket">]</span></a></sup> The bytecode language supported by the Android SDK is incompatible with Java bytecode and runs on its own virtual machine, optimized for low-memory devices such as <a href="Smartphone" title="Smartphone">smartphones</a> and <a href="Tablet_computer" title="Tablet computer">tablet computers</a>. Depending on the Android version, the bytecode is either interpreted by the <a href="Dalvik_(software)" title="Dalvik (software)">Dalvik virtual machine</a> or compiled into native code by the <a href="Android_Runtime" title="Android Runtime">Android Runtime</a>.
</p><p>Android does not provide the full Java SE standard library, although the Android SDK does include an independent implementation of a large subset of it. It supports Java&nbsp;6 and some Java&nbsp;7 features, offering an implementation compatible with the standard library (<a href="Apache_Harmony" title="Apache Harmony">Apache Harmony</a>).
</p>
<div class="mw-heading mw-heading4"><h4 id="Controversy">Controversy</h4></div>
<div role="note" class="hatnote navigation-not-searchable">See also: <a href="Oracle_America%2C_Inc._v._Google%2C_Inc." class="mw-redirect" title="Oracle America, Inc. v. Google, Inc.">Oracle America, Inc. v. Google, Inc.</a></div>
<p>The use of Java-related technology in Android led to a legal dispute between Oracle and Google. On May 7, 2012, a San Francisco jury found that if APIs could be copyrighted, then Google had infringed Oracle's copyrights by the use of Java in Android devices.<sup id="cite_ref-88" class="reference"><a href="#cite_note-88"><span class="cite-bracket">[</span>88<span class="cite-bracket">]</span></a></sup> District Judge <a href="William_Alsup" title="William Alsup">William Alsup</a> ruled on May 31, 2012, that APIs cannot be copyrighted,<sup id="cite_ref-89" class="reference"><a href="#cite_note-89"><span class="cite-bracket">[</span>89<span class="cite-bracket">]</span></a></sup> but this was reversed by the United States Court of Appeals for the Federal Circuit in May 2014.<sup id="cite_ref-cnet_appeals_90-0" class="reference"><a href="#cite_note-cnet_appeals-90"><span class="cite-bracket">[</span>90<span class="cite-bracket">]</span></a></sup> On May 26, 2016, the district court decided in favor of Google, ruling the copyright infringement of the Java API in Android constitutes fair use.<sup id="cite_ref-91" class="reference"><a href="#cite_note-91"><span class="cite-bracket">[</span>91<span class="cite-bracket">]</span></a></sup> In March 2018, this ruling was overturned by the Appeals Court, which sent down the case of determining the damages to federal court in San Francisco.<sup id="cite_ref-92" class="reference"><a href="#cite_note-92"><span class="cite-bracket">[</span>92<span class="cite-bracket">]</span></a></sup>
Google filed a petition for <a href="Certiorari" title="Certiorari">writ of certiorari</a> with the <a href="Supreme_Court_of_the_United_States" title="Supreme Court of the United States">Supreme Court of the United States</a> in January 2019 to challenge the two rulings that were made by the Appeals Court in Oracle's favor.<sup id="cite_ref-93" class="reference"><a href="#cite_note-93"><span class="cite-bracket">[</span>93<span class="cite-bracket">]</span></a></sup> On April 5, 2021, the Court ruled 6–2 in Google's favor, that its use of Java APIs should be considered <a href="Fair_use" title="Fair use">fair use</a>. However, the court refused to rule on the copyrightability of APIs, choosing instead to determine their ruling by considering Java's API copyrightable "purely for argument's sake."<sup id="cite_ref-94" class="reference"><a href="#cite_note-94"><span class="cite-bracket">[</span>94<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1266661725">
/* start https://en.wikipedia.org/ */


.mw-parser-output .portalbox{padding:0;margin:0.5em 0;display:table;box-sizing:border-box;max-width:175px;list-style:none}.mw-parser-output .portalborder{border:1px solid var(--border-color-base,#a2a9b1);padding:0.1em;background:var(--background-color-neutral-subtle,#f8f9fa)}.mw-parser-output .portalbox-entry{display:table-row;font-size:85%;line-height:110%;height:1.9em;font-style:italic;font-weight:bold}.mw-parser-output .portalbox-image{display:table-cell;padding:0.2em;vertical-align:middle;text-align:center}.mw-parser-output .portalbox-link{display:table-cell;padding:0.2em 0.2em 0.2em 0.3em;vertical-align:middle}@media(min-width:720px){.mw-parser-output .portalleft{margin:0.5em 1em 0.5em 0}.mw-parser-output .portalright{clear:right;float:right;margin:0.5em 0 0.5em 1em}}


/* end https://en.wikipedia.org/ */
</style>
<ul><li><a href="C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a></li>
<li><a href="C%2B%2B" title="C++">C++</a></li>
<li><a href="Dalvik_(software)" title="Dalvik (software)">Dalvik</a>, used in old Android versions, replaced by non-JIT <a href="Android_Runtime" title="Android Runtime">Android Runtime</a></li>
<li><a href="Java_Heterogeneous_Distributed_Computing" title="Java Heterogeneous Distributed Computing">Java Heterogeneous Distributed Computing</a></li>
<li><a href="List_of_Java_APIs" title="List of Java APIs">List of Java APIs</a></li>
<li><a href="List_of_Java_frameworks" title="List of Java frameworks">List of Java frameworks</a></li>
<li><a href="List_of_JVM_languages" title="List of JVM languages">List of JVM languages</a></li>
<li><a href="List_of_Java_virtual_machines" title="List of Java virtual machines">List of Java virtual machines</a></li>
<li><a href="Comparison_of_C_Sharp_and_Java" title="Comparison of C Sharp and Java">Comparison of C# and Java</a></li>
<li><a href="Comparison_of_Java_and_C%2B%2B" title="Comparison of Java and C++">Comparison of Java and C++</a></li>
<li><a href="Comparison_of_programming_languages" title="Comparison of programming languages">Comparison of programming languages</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */


.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}


/* end https://en.wikipedia.org/ */
</style><div class="reflist">
<div class="mw-references-wrap mw-references-columns"><ol class="references">
<li id="cite_note-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-1">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */


.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}


/* end https://en.wikipedia.org/ */
</style><cite id="CITEREFBinstock,_Andrew2015" class="citation magazine cs1">Binstock, Andrew (May 20, 2015). <a rel="nofollow" class="external text" href="https://www.forbes.com/sites/oracle/2015/05/20/javas-20-years-of-innovation/">"Java's 20 Years of Innovation"</a>. <i>Forbes</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20160314102242/http://www.forbes.com/sites/oracle/2015/05/20/javas-20-years-of-innovation/">Archived</a> from the original on March 14, 2016<span class="reference-accessdate">. Retrieved <span class="nowrap">March 18,</span> 2016</span>.</cite></span>
</li>
<li id="cite_note-wikidata-e9ac0f1726a2a32c747669049b9b918ac80f4626-v20-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-wikidata-e9ac0f1726a2a32c747669049b9b918ac80f4626-v20_2-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.oracle.com/news/announcement/oracle-releases-java-24-2025-03-18/">"Oracle Releases Java 24"</a>.</cite></span>
</li>
<li id="cite_note-wikidata-5846d55274e3f50edf1b3f337aadbb187b7cfbd3-v20-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-wikidata-5846d55274e3f50edf1b3f337aadbb187b7cfbd3-v20_3-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://openjdk.org/projects/jdk/24/">"JDK 24"</a>.</cite></span>
</li>
<li id="cite_note-BarbaraLiskov-4"><span class="mw-cite-backlink">^ <a href="#cite_ref-BarbaraLiskov_4-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-BarbaraLiskov_4-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-BarbaraLiskov_4-2"><sup><i><b>c</b></i></sup></a> <a href="#cite_ref-BarbaraLiskov_4-3"><sup><i><b>d</b></i></sup></a></span> <span class="reference-text"><cite id="CITEREFBarbara_Liskov_with_John_Guttag2000" class="citation book cs1"><a href="Barbara_Liskov" title="Barbara Liskov">Barbara Liskov</a> with <a href="John_Guttag" title="John Guttag">John Guttag</a> (2000). <i>Program Development in Java – Abstraction, Specification, and Object-Oriented Design</i>. USA, Addison Wesley. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>978-0-201-65768-5</bdi>.</cite></span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text"><cite id="CITEREFChaudhary2014" class="citation web cs1">Chaudhary, Harry H. (July 28, 2014). <a rel="nofollow" class="external text" href="https://books.google.com/books?id=0rUtBAAAQBAJ&amp;pg=PAPA133">"Cracking The Java Programming Interview&nbsp;:: 2000+ Java Interview Que/Ans"</a>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20230929040943/https://books.google.com/books?id=0rUtBAAAQBAJ&amp;pg=PAPA133#v=onepage&amp;q&amp;f=false">Archived</a> from the original on September 29, 2023<span class="reference-accessdate">. Retrieved <span class="nowrap">May 29,</span> 2016</span>.</cite></span>
</li>
<li id="cite_note-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-6">^</a></b></span> <span class="reference-text">Java&nbsp;5.0 added several new language features (the <a href="Foreach_loop" title="Foreach loop">enhanced for loop</a>, <a href="Object_type_(object-oriented_programming)" class="mw-redirect" title="Object type (object-oriented programming)">autoboxing</a>, <a href="Variadic_function" title="Variadic function">varargs</a> and <a href="Java_annotation" title="Java annotation">annotations</a>), after they were introduced in the similar (and competing) <a href="C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a> language. <a rel="nofollow" class="external autonumber" href="http://www.barrycornelius.com/papers/java5/">[1]</a> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20110319065438/http://www.barrycornelius.com/papers/java5/">Archived</a> March 19, 2011, at the <a href="Wayback_Machine" title="Wayback Machine">Wayback Machine</a> <a rel="nofollow" class="external autonumber" href="http://www.levenez.com/lang/">[2]</a> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20060107162045/http://www.levenez.com/lang/">Archived</a> January 7, 2006, at the <a href="Wayback_Machine" title="Wayback Machine">Wayback Machine</a></span>
</li>
<li id="cite_note-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-7">^</a></b></span> <span class="reference-text"><cite id="CITEREFGosling,_JamesMcGilton,_Henry1996" class="citation web cs1">Gosling, James; McGilton, Henry (May 1996). <a rel="nofollow" class="external text" href="https://www.oracle.com/technetwork/java/langenv-140151.html">"The Java Language Environment"</a>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20140506214653/http://www.oracle.com/technetwork/java/langenv-140151.html">Archived</a> from the original on May 6, 2014<span class="reference-accessdate">. Retrieved <span class="nowrap">May 6,</span> 2014</span>.</cite></span>
</li>
<li id="cite_note-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-8">^</a></b></span> <span class="reference-text"><cite id="CITEREFGosling,_JamesJoy,_BillSteele,_GuyBracha,_Gilad" class="citation web cs1">Gosling, James; Joy, Bill; Steele, Guy; Bracha, Gilad. <a rel="nofollow" class="external text" href="https://java.sun.com/docs/books/jls/second_edition/html/intro.doc.html#237601">"The Java Language Specification, 2nd Edition"</a>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20110805051057/http://java.sun.com/docs/books/jls/second_edition/html/intro.doc.html#237601">Archived</a> from the original on August 5, 2011<span class="reference-accessdate">. Retrieved <span class="nowrap">February 8,</span> 2008</span>.</cite></span>
</li>
<li id="cite_note-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-9">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20090105145818/http://www.computerworld.com.au/index.php/id%3B1422447371%3Bpp%3B3%3Bfp%3B4194304%3Bfpid%3B1">"The A-Z of Programming Languages: Modula-3"</a>. Computerworld. Archived from <a rel="nofollow" class="external text" href="http://www.computerworld.com.au/index.php/id;1422447371;pp;3;fp;4194304;fpid;1">the original</a> on January 5, 2009<span class="reference-accessdate">. Retrieved <span class="nowrap">June 9,</span> 2010</span>.</cite></span>
</li>
<li id="cite_note-10"><span class="mw-cite-backlink"><b><a href="#cite_ref-10">^</a></b></span> <span class="reference-text"><a href="Niklaus_Wirth" title="Niklaus Wirth">Niklaus Wirth</a> stated on a number of public occasions, e.g. in a lecture at the Polytechnic Museum, Moscow in September 2005 (several independent first-hand accounts in Russian exist, e.g. one with an audio recording: <cite id="CITEREFFilippova,_Elena2005" class="citation web cs1">Filippova, Elena (September 22, 2005). <a rel="nofollow" class="external text" href="http://www.delphikingdom.com/asp/viewitem.asp?catalogid=1155">"Niklaus Wirth's lecture at the Polytechnic Museum in Moscow"</a>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20201201054813/http://www.delphikingdom.com/asp/viewitem.asp?catalogid=1155">Archived</a> from the original on December 1, 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">November 20,</span> 2011</span>.</cite>), that the Sun Java design team licensed the Oberon compiler sources a number of years prior to the release of Java and examined it: a (relative) compactness, type safety, garbage collection, no multiple inheritance for classes&nbsp;– all these key overall design features are shared by Java and Oberon.</span>
</li>
<li id="cite_note-11"><span class="mw-cite-backlink"><b><a href="#cite_ref-11">^</a></b></span> <span class="reference-text"><a href="Patrick_Naughton" class="new" title="Patrick Naughton (page does not exist)">Patrick Naughton</a> cites <a href="Objective-C" title="Objective-C">Objective-C</a> as a strong influence on the design of the Java programming language, stating that notable direct derivatives include Java interfaces (derived from Objective-C's <a href="Objective-C#Protocols" title="Objective-C">protocol</a>) and primitive wrapper classes. <a rel="nofollow" class="external autonumber" href="http://cs.gmu.edu/~sean/stuff/java-objc.html">[3]</a> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20110713014816/http://cs.gmu.edu/~sean/stuff/java-objc.html">Archived</a> July 13, 2011, at the <a href="Wayback_Machine" title="Wayback Machine">Wayback Machine</a></span>
</li>
<li id="cite_note-12"><span class="mw-cite-backlink"><b><a href="#cite_ref-12">^</a></b></span> <span class="reference-text"><cite id="CITEREFTechMetrix_Research1999" class="citation web cs1">TechMetrix Research (1999). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20101229090912/http://www.fscript.org/prof/javapassport.pdf">"History of Java"</a> <span class="cs1-format">(PDF)</span>. <i>Java Application Servers Report</i>. Archived from <a rel="nofollow" class="external text" href="http://www.fscript.org/prof/javapassport.pdf">the original</a> <span class="cs1-format">(PDF)</span> on December 29, 2010. <q>The project went ahead under the name <i>green</i> and the language was based on an old model of <a href="UCSD_Pascal" title="UCSD Pascal">UCSD Pascal</a>, which makes it possible to generate interpretive code.</q></cite></span>
</li>
<li id="cite_note-13"><span class="mw-cite-backlink"><b><a href="#cite_ref-13">^</a></b></span> <span class="reference-text"><cite class="citation magazine cs1"><a rel="nofollow" class="external text" href="http://queue.acm.org/detail.cfm?id=1017013">"A Conversation with James Gosling"</a>. <i><a href="ACM_Queue" title="ACM Queue">ACM Queue</a></i>. Vol.&nbsp;2, no.&nbsp;5. <a href="Association_for_Computing_Machinery" title="Association for Computing Machinery">Association for Computing Machinery</a>. August 31, 2004. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20150716194245/http://queue.acm.org/detail.cfm?id=1017013">Archived</a> from the original on July 16, 2015<span class="reference-accessdate">. Retrieved <span class="nowrap">June 9,</span> 2010</span>.</cite></span>
</li>
<li id="cite_note-14"><span class="mw-cite-backlink"><b><a href="#cite_ref-14">^</a></b></span> <span class="reference-text"><cite id="CITEREFThe_Java_Language_Team" class="citation report cs1">The Java Language Team. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20120627043929/http://java.sun.com/docs/white/delegates.html">About Microsoft's 'Delegates'</a> (White Paper). JavaSoft, Sun Microsystems, Inc. Archived from <a rel="nofollow" class="external text" href="http://java.sun.com/docs/white/delegates.html">the original</a> on June 27, 2012. <q>In the summer of 1996, Sun was designing the precursor to what is now the event model of the AWT and the JavaBeans component architecture. Borland contributed greatly to this process. We looked very carefully at Delphi Object Pascal and built a working prototype of bound method references in order to understand their interaction with the Java programming language and its APIs.</q></cite></span>
</li>
<li id="cite_note-chplspec-15"><span class="mw-cite-backlink"><b><a href="#cite_ref-chplspec_15-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://chapel.cray.com/spec/spec-0.98.pdf">"Chapel spec (Acknowledgements)"</a> <span class="cs1-format">(PDF)</span>. Cray Inc. October 1, 2015. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20160205114946/http://chapel.cray.com/spec/spec-0.98.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on February 5, 2016<span class="reference-accessdate">. Retrieved <span class="nowrap">January 14,</span> 2016</span>.</cite></span>
</li>
<li id="cite_note-gambas-16"><span class="mw-cite-backlink"><b><a href="#cite_ref-gambas_16-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://gambaswiki.org/wiki/doc/intro?nh&amp;l=en">"Gambas Documentation Introduction"</a>. Gambas Website. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20171009041815/http://gambaswiki.org/wiki/doc/intro?nh&amp;l=en">Archived</a> from the original on October 9, 2017<span class="reference-accessdate">. Retrieved <span class="nowrap">October 9,</span> 2017</span>.</cite></span>
</li>
<li id="cite_note-17"><span class="mw-cite-backlink"><b><a href="#cite_ref-17">^</a></b></span> <span class="reference-text"><cite class="citation magazine cs1"><a rel="nofollow" class="external text" href="http://www.infoworld.com/article/2610885/facebook-q-a--hack-brings-static-typing-to-php-world.html">"Facebook Q&amp;A: Hack brings static typing to PHP world"</a>. <i>InfoWorld</i>. March 26, 2014. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20150213220946/http://www.infoworld.com/article/2610885/facebook-q-a--hack-brings-static-typing-to-php-world.html">Archived</a> from the original on February 13, 2015<span class="reference-accessdate">. Retrieved <span class="nowrap">January 11,</span> 2015</span>.</cite></span>
</li>
<li id="cite_note-18"><span class="mw-cite-backlink"><b><a href="#cite_ref-18">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.computerweekly.com/Articles/2002/05/02/186793/write-once-run-anywhere.htm">"Write once, run anywhere?"</a>. <a href="Computer_Weekly" title="Computer Weekly">Computer Weekly</a>. May 2, 2002. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20210813193857/https://www.computerweekly.com/feature/Write-once-run-anywhere">Archived</a> from the original on August 13, 2021<span class="reference-accessdate">. Retrieved <span class="nowrap">July 27,</span> 2009</span>.</cite></span>
</li>
<li id="cite_note-design_goals-19"><span class="mw-cite-backlink">^ <a href="#cite_ref-design_goals_19-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-design_goals_19-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-design_goals_19-2"><sup><i><b>c</b></i></sup></a></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.oracle.com/technetwork/java/intro-141325.html">"1.2 Design Goals of the Java Programming Language"</a>. Oracle. January 1, 1999. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20130123204103/http://www.oracle.com/technetwork/java/intro-141325.html">Archived</a> from the original on January 23, 2013<span class="reference-accessdate">. Retrieved <span class="nowrap">January 14,</span> 2013</span>.</cite></span>
</li>
<li id="cite_note-20"><span class="mw-cite-backlink"><b><a href="#cite_ref-20">^</a></b></span> <span class="reference-text"><cite id="CITEREFMelanson2022" class="citation web cs1">Melanson, Mike (August 9, 2022). <a rel="nofollow" class="external text" href="https://github.com/readme/featured/java-programming-language">"Don't call it a comeback: Why Java is still champ"</a>. <i><a href="GitHub" title="GitHub">GitHub</a></i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20230825195416/https://github.com/readme/featured/java-programming-language">Archived</a> from the original on August 25, 2023<span class="reference-accessdate">. Retrieved <span class="nowrap">October 15,</span> 2023</span>.</cite></span>
</li>
<li id="cite_note-21"><span class="mw-cite-backlink"><b><a href="#cite_ref-21">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://octoverse.github.com/2022/top-programming-languages">"The top programming languages"</a>. <i>The State of the Octoverse</i>. <a href="GitHub" title="GitHub">GitHub</a>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20230802203718/https://octoverse.github.com/2022/top-programming-languages">Archived</a> from the original on August 2, 2023<span class="reference-accessdate">. Retrieved <span class="nowrap">October 15,</span> 2023</span>.</cite></span>
</li>
<li id="cite_note-:0-22"><span class="mw-cite-backlink"><b><a href="#cite_ref-:0_22-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFMcMillan2013" class="citation magazine cs1">McMillan, Robert (August 1, 2013). <span class="id-lock-limited" title="Free access subject to limited trial, subscription normally required"><a rel="nofollow" class="external text" href="https://www.wired.com/2013/01/java-no-longer-a-favorite/">"Is Java Losing Its Mojo?"</a></span>. <i><a href="Wired.com" class="mw-redirect" title="Wired.com">Wired</a></i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20170215115409/https://www.wired.com/2013/01/java-no-longer-a-favorite/">Archived</a> from the original on February 15, 2017<span class="reference-accessdate">. Retrieved <span class="nowrap">October 15,</span> 2023</span>.</cite></span>
</li>
<li id="cite_note-23"><span class="mw-cite-backlink"><b><a href="#cite_ref-23">^</a></b></span> <span class="reference-text"><cite id="CITEREFByousc._1998" class="citation web cs1">Byous, Jon (c. 1998). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20050420081440/http://java.sun.com/features/1998/05/birthday.html">"Java technology: The early years"</a>. <i>Sun Developer Network</i>. <a href="Sun_Microsystems" title="Sun Microsystems">Sun Microsystems</a>. Archived from <a rel="nofollow" class="external text" href="https://java.sun.com/features/1998/05/birthday.html">the original</a> on April 20, 2005<span class="reference-accessdate">. Retrieved <span class="nowrap">April 22,</span> 2005</span>.</cite></span>
</li>
<li id="cite_note-24"><span class="mw-cite-backlink"><b><a href="#cite_ref-24">^</a></b></span> <span class="reference-text">Object-oriented programming <cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20100210225651/http://www.java.com/en/javahistory/">"The History of Java Technology"</a>. <i>Sun Developer Network</i>. c. 1995. Archived from <a rel="nofollow" class="external text" href="http://www.java.com/en/javahistory/">the original</a> on February 10, 2010<span class="reference-accessdate">. Retrieved <span class="nowrap">April 30,</span> 2010</span>.</cite></span>
</li>
<li id="cite_note-25"><span class="mw-cite-backlink"><b><a href="#cite_ref-25">^</a></b></span> <span class="reference-text"><cite id="CITEREFMurphy1996" class="citation web cs1">Murphy, Kieron (October 4, 1996). <a rel="nofollow" class="external text" href="https://www.infoworld.com/article/2077265/so-why-did-they-decide-to-call-it-java-.html">"So why did they decide to call it Java?"</a>. <i><a href="JavaWorld" class="mw-redirect" title="JavaWorld">JavaWorld</a></i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20200713234202/https://www.infoworld.com/article/2077265/so-why-did-they-decide-to-call-it-java-.html">Archived</a> from the original on July 13, 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">July 13,</span> 2020</span>.</cite></span>
</li>
<li id="cite_note-26"><span class="mw-cite-backlink"><b><a href="#cite_ref-26">^</a></b></span> <span class="reference-text">Kabutz, Heinz; <a rel="nofollow" class="external text" href="http://www.artima.com/weblogs/viewpost.jsp?thread=7555"><i>Once Upon an Oak</i></a> <a rel="nofollow" class="external text" href="https://web.archive.org/web/20070413072630/http://www.artima.com/weblogs/viewpost.jsp?thread=7555">Archived</a> April 13, 2007, at the <a href="Wayback_Machine" title="Wayback Machine">Wayback Machine</a>. Artima. Retrieved April 29, 2007.</span>
</li>
<li id="cite_note-oraclejavahistory-27"><span class="mw-cite-backlink"><b><a href="#cite_ref-oraclejavahistory_27-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20070310235103/http://www.sun.com/smi/Press/sunflash/1996-01/sunflash.960123.10561.xml">"JAVASOFT SHIPS JAVA 1.0"</a>. Archived from <a rel="nofollow" class="external text" href="http://www.sun.com/smi/Press/sunflash/1996-01/sunflash.960123.10561.xml">the original</a> on March 10, 2007<span class="reference-accessdate">. Retrieved <span class="nowrap">May 13,</span> 2018</span>.</cite></span>
</li>
<li id="cite_note-28"><span class="mw-cite-backlink"><b><a href="#cite_ref-28">^</a></b></span> <span class="reference-text"><cite class="citation book cs1"><a rel="nofollow" class="external text" href="https://books.google.com/books?id=rXGMFYXFDwMC"><i>Object-oriented Programming with Java: Essentials and Applications</i></a>. Tata McGraw-Hill Education. p.&nbsp;34.</cite></span>
</li>
<li id="cite_note-29"><span class="mw-cite-backlink"><b><a href="#cite_ref-29">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.open-std.org/JTC1/SC22/JSG/">"JSG – Java Study Group"</a>. <i>open-std.org</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20060825082008/http://www.open-std.org/JTC1/SC22/JSG/">Archived</a> from the original on August 25, 2006<span class="reference-accessdate">. Retrieved <span class="nowrap">August 2,</span> 2006</span>.</cite></span>
</li>
<li id="cite_note-30"><span class="mw-cite-backlink"><b><a href="#cite_ref-30">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.computer.org/csdl/proceedings/hicss/2001/0981/05/09815015.pdf">"Why Java Was – Not – Standardized Twice"</a> <span class="cs1-format">(PDF)</span>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20140113101235/http://www.computer.org/csdl/proceedings/hicss/2001/0981/05/09815015.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on January 13, 2014<span class="reference-accessdate">. Retrieved <span class="nowrap">June 3,</span> 2018</span>.</cite></span>
</li>
<li id="cite_note-31"><span class="mw-cite-backlink"><b><a href="#cite_ref-31">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.zdnet.com/news/what-is-ecma-and-why-microsoft-cares/298821">"What is ECMA—and why Microsoft cares"</a>. <i><a href="ZDNet" class="mw-redirect" title="ZDNet">ZDNet</a></i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20140506215226/http://www.zdnet.com/news/what-is-ecma-and-why-microsoft-cares/298821">Archived</a> from the original on May 6, 2014<span class="reference-accessdate">. Retrieved <span class="nowrap">May 6,</span> 2014</span>.</cite></span>
</li>
<li id="cite_note-32"><span class="mw-cite-backlink"><b><a href="#cite_ref-32">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.jcp.org/en/home/index">"Java Community Process website"</a>. Jcp.org. May 24, 2010. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20060808070528/http://www.jcp.org/en/home/index">Archived</a> from the original on August 8, 2006<span class="reference-accessdate">. Retrieved <span class="nowrap">June 9,</span> 2010</span>.</cite></span>
</li>
<li id="cite_note-33"><span class="mw-cite-backlink"><b><a href="#cite_ref-33">^</a></b></span> <span class="reference-text"><cite class="citation web cs1 cs1-prop-unfit"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20140527220942/http://grnlight.net/index.php/programming-articles/115-javaone-sun-the-bulk-of-java-is-open-sourced">"JAVAONE: Sun – The bulk of Java is open sourced"</a>. GrnLight.net. Archived from the original on May 27, 2014<span class="reference-accessdate">. Retrieved <span class="nowrap">May 26,</span> 2014</span>.</cite></span>
</li>
<li id="cite_note-34"><span class="mw-cite-backlink"><b><a href="#cite_ref-34">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://onjava.com/pub/a/onjava/2002/04/17/evangelism.html">"Sun's Evolving Role as Java Evangelist"</a>. <a href="O'Reilly_Media" title="O'Reilly Media">O'Reilly Media</a>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20100915162748/http://onjava.com/pub/a/onjava/2002/04/17/evangelism.html">Archived</a> from the original on September 15, 2010<span class="reference-accessdate">. Retrieved <span class="nowrap">August 2,</span> 2009</span>.</cite></span>
</li>
<li id="cite_note-35"><span class="mw-cite-backlink"><b><a href="#cite_ref-35">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20100131091008/http://www.oracle.com/us/technologies/java/">"Oracle and Java"</a>. <i>oracle.com</i>. Oracle Corporation. Archived from <a rel="nofollow" class="external text" href="https://www.oracle.com/us/technologies/java/">the original</a> on January 31, 2010<span class="reference-accessdate">. Retrieved <span class="nowrap">August 23,</span> 2010</span>. <q>Oracle has been a leading and substantive supporter of Java since its emergence in 1995 and takes on the new role as steward of Java technology with a relentless commitment to fostering a community of participation and transparency.</q></cite></span>
</li>
<li id="cite_note-36"><span class="mw-cite-backlink"><b><a href="#cite_ref-36">^</a></b></span> <span class="reference-text"><cite id="CITEREFGosling2010" class="citation web cs1"><a href="James_Gosling" title="James Gosling">Gosling, James</a> (April 9, 2010). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20101105031239/http://nighthacks.com/roller/jag/entry/time_to_move_on">"Time to move on..."</a> <i>On a New Road</i>. Archived from <a rel="nofollow" class="external text" href="http://nighthacks.com/roller/jag/entry/time_to_move_on">the original</a> on November 5, 2010<span class="reference-accessdate">. Retrieved <span class="nowrap">November 16,</span> 2011</span>.</cite></span>
</li>
<li id="cite_note-37"><span class="mw-cite-backlink"><b><a href="#cite_ref-37">^</a></b></span> <span class="reference-text"><cite id="CITEREFTopic" class="citation web cs1">Topic, Dalibor. <a rel="nofollow" class="external text" href="https://blogs.oracle.com/java-platform-group/entry/moving_to_a_plugin_free">"Moving to a Plugin-Free Web"</a>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20160316164325/https://blogs.oracle.com/java-platform-group/entry/moving_to_a_plugin_free">Archived</a> from the original on March 16, 2016<span class="reference-accessdate">. Retrieved <span class="nowrap">March 15,</span> 2016</span>.</cite></span>
</li>
<li id="cite_note-38"><span class="mw-cite-backlink"><b><a href="#cite_ref-38">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.java.com/en/about/">"Learn About Java Technology"</a>. Oracle. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20111124090716/http://www.java.com/en/about/">Archived</a> from the original on November 24, 2011<span class="reference-accessdate">. Retrieved <span class="nowrap">November 21,</span> 2011</span>.</cite></span>
</li>
<li id="cite_note-39"><span class="mw-cite-backlink"><b><a href="#cite_ref-39">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.java.com/en/download/faq/remove_olderversions.xml">"Why should I uninstall older versions of Java from my system?"</a>. Oracle. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20180212011608/https://java.com/en/download/faq/remove_olderversions.xml">Archived</a> from the original on February 12, 2018<span class="reference-accessdate">. Retrieved <span class="nowrap">September 24,</span> 2021</span>.</cite></span>
</li>
<li id="cite_note-40"><span class="mw-cite-backlink"><b><a href="#cite_ref-40">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.oracle.com/java/technologies/java-se-support-roadmap.html">"Oracle Java SE Support Roadmap"</a>. Oracle. September 13, 2021. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20210919090451/https://www.oracle.com/java/technologies/java-se-support-roadmap.html">Archived</a> from the original on September 19, 2021<span class="reference-accessdate">. Retrieved <span class="nowrap">September 18,</span> 2021</span>.</cite></span>
</li>
<li id="cite_note-41"><span class="mw-cite-backlink"><b><a href="#cite_ref-41">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://adoptium.net/support/">"Temurin™ Support; Adoptium"</a>. <i>adoptium.net</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20240329061257/https://adoptium.net/support/">Archived</a> from the original on March 29, 2024<span class="reference-accessdate">. Retrieved <span class="nowrap">March 29,</span> 2024</span>.</cite></span>
</li>
<li id="cite_note-42"><span class="mw-cite-backlink"><b><a href="#cite_ref-42">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20070310235103/http://www.sun.com/smi/Press/sunflash/1996-01/sunflash.960123.10561.xml">"JAVASOFT SHIPS JAVA 1.0"</a>. <i>sun.com</i>. Archived from <a rel="nofollow" class="external text" href="http://www.sun.com/smi/Press/sunflash/1996-01/sunflash.960123.10561.xml">the original</a> on March 10, 2007<span class="reference-accessdate">. Retrieved <span class="nowrap">February 5,</span> 2008</span>.</cite></span>
</li>
<li id="cite_note-43"><span class="mw-cite-backlink"><b><a href="#cite_ref-43">^</a></b></span> <span class="reference-text"><cite id="CITEREFChander" class="citation news cs1">Chander, Sharat. <a rel="nofollow" class="external text" href="https://blogs.oracle.com/java-platform-group/introducing-java-se-11">"Introducing Java SE 11"</a>. <i>oracle.com</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20180926093144/https://blogs.oracle.com/java-platform-group/introducing-java-se-11">Archived</a> from the original on September 26, 2018<span class="reference-accessdate">. Retrieved <span class="nowrap">September 26,</span> 2018</span>.</cite></span>
</li>
<li id="cite_note-44"><span class="mw-cite-backlink"><b><a href="#cite_ref-44">^</a></b></span> <span class="reference-text"><cite id="CITEREFChander2020" class="citation news cs1">Chander, Sharat (September 15, 2020). <a rel="nofollow" class="external text" href="https://blogs.oracle.com/java-platform-group/the-arrival-of-java-15">"The Arrival of Java 15!"</a>. <a href="Oracle_Corporation" title="Oracle Corporation">Oracle</a>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20200916092332/https://blogs.oracle.com/java-platform-group/the-arrival-of-java-15">Archived</a> from the original on September 16, 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">September 15,</span> 2020</span>.</cite></span>
</li>
<li id="cite_note-45"><span class="mw-cite-backlink"><b><a href="#cite_ref-45">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://openjdk.org/projects/jdk/21/">"JDK 21"</a>. <i>openjdk.org</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20230920173515/https://openjdk.org/projects/jdk/21/">Archived</a> from the original on September 20, 2023<span class="reference-accessdate">. Retrieved <span class="nowrap">September 20,</span> 2023</span>.</cite></span>
</li>
<li id="cite_note-jdk24-46"><span class="mw-cite-backlink"><b><a href="#cite_ref-jdk24_46-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://openjdk.org/projects/jdk/24/">"JDK 24"</a>.</cite></span>
</li>
<li id="cite_note-java_card-47"><span class="mw-cite-backlink"><b><a href="#cite_ref-java_card_47-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.oracle.com/technetwork/java/embedded/javacard/overview/">"Java Card Overview"</a>. <i>Oracle Technology Network</i>. Oracle. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20150107034738/http://www.oracle.com/technetwork/java/embedded/javacard/overview/">Archived</a> from the original on January 7, 2015<span class="reference-accessdate">. Retrieved <span class="nowrap">December 18,</span> 2014</span>.</cite></span>
</li>
<li id="cite_note-java_me-48"><span class="mw-cite-backlink"><b><a href="#cite_ref-java_me_48-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.oracle.com/technetwork/java/embedded/javame/">"Java Platform, Micro Edition (Java ME)"</a>. <i>Oracle Technology Network</i>. Oracle. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20150104210546/http://www.oracle.com/technetwork/java/embedded/javame/">Archived</a> from the original on January 4, 2015<span class="reference-accessdate">. Retrieved <span class="nowrap">December 18,</span> 2014</span>.</cite></span>
</li>
<li id="cite_note-java_se-49"><span class="mw-cite-backlink"><b><a href="#cite_ref-java_se_49-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.oracle.com/technetwork/java/javase/overview/">"Java SE"</a>. <i>Oracle Technology Network</i>. Oracle. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20141224184532/http://www.oracle.com/technetwork/java/javase/overview/">Archived</a> from the original on December 24, 2014<span class="reference-accessdate">. Retrieved <span class="nowrap">December 18,</span> 2014</span>.</cite></span>
</li>
<li id="cite_note-java_ee-50"><span class="mw-cite-backlink"><b><a href="#cite_ref-java_ee_50-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.oracle.com/technetwork/java/javaee/overview/">"Java Platform, Enterprise Edition (Java EE)"</a>. <i>Oracle Technology Network</i>. Oracle. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20141217155326/http://www.oracle.com/technetwork/java/javaee/overview/">Archived</a> from the original on December 17, 2014<span class="reference-accessdate">. Retrieved <span class="nowrap">December 18,</span> 2014</span>.</cite></span>
</li>
<li id="cite_note-51"><span class="mw-cite-backlink"><b><a href="#cite_ref-51">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.baeldung.com/graal-java-jit-compiler">"Deep Dive Into the New Java JIT Compiler – Graal | Baeldung"</a>. <i>www.baeldung.com</i>. August 6, 2021. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20211028165746/https://www.baeldung.com/graal-java-jit-compiler">Archived</a> from the original on October 28, 2021<span class="reference-accessdate">. Retrieved <span class="nowrap">October 13,</span> 2021</span>.</cite></span>
</li>
<li id="cite_note-52"><span class="mw-cite-backlink"><b><a href="#cite_ref-52">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.programmerinterview.com/index.php/java-questions/jvm-platform-dependent/">"Is the JVM (Java Virtual Machine) platform dependent or platform independent? What is the advantage of using the JVM, and having Java be a translated language?"</a>. Programmer Interview. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20150119144223/http://www.programmerinterview.com/index.php/java-questions/jvm-platform-dependent/">Archived</a> from the original on January 19, 2015<span class="reference-accessdate">. Retrieved <span class="nowrap">January 19,</span> 2015</span>.</cite></span>
</li>
<li id="cite_note-Jelovic-53"><span class="mw-cite-backlink">^ <a href="#cite_ref-Jelovic_53-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-Jelovic_53-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite id="CITEREFJelovic" class="citation web cs1">Jelovic, Dejan. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20080211111923/http://www.jelovic.com/articles/why_java_is_slow.htm">"Why Java will always be slower than C++"</a>. Archived from <a rel="nofollow" class="external text" href="http://www.jelovic.com/articles/why_java_is_slow.htm">the original</a> on February 11, 2008<span class="reference-accessdate">. Retrieved <span class="nowrap">February 15,</span> 2008</span>.</cite></span>
</li>
<li id="cite_note-54"><span class="mw-cite-backlink"><b><a href="#cite_ref-54">^</a></b></span> <span class="reference-text"><cite id="CITEREFHundt" class="citation web cs1">Hundt, Robert. <a rel="nofollow" class="external text" href="https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf">"Loop Recognition in C++/Java/Go/Scala"</a> <span class="cs1-format">(PDF)</span>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20111116151424/https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on November 16, 2011<span class="reference-accessdate">. Retrieved <span class="nowrap">July 12,</span> 2012</span>.</cite></span>
</li>
<li id="cite_note-55"><span class="mw-cite-backlink"><b><a href="#cite_ref-55">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20100628171748/http://www.symantec.com/about/news/release/article.jsp?prid=19970407_03">"Symantec's Just-In-Time Java Compiler To Be Integrated into Sun JDK 1.1"</a>. Archived from <a rel="nofollow" class="external text" href="http://www.symantec.com/about/news/release/article.jsp?prid=19970407_03">the original</a> on June 28, 2010<span class="reference-accessdate">. Retrieved <span class="nowrap">August 1,</span> 2009</span>.</cite></span>
</li>
<li id="cite_note-56"><span class="mw-cite-backlink"><b><a href="#cite_ref-56">^</a></b></span> <span class="reference-text"><cite id="CITEREFSalcicParkTeichMalik2017" class="citation journal cs1">Salcic, Zoran; Park, Heejong; Teich, Jürgen; Malik, Avinash; Nadeem, Muhammad (July 22, 2017). "Noc-HMP: A Heterogeneous Multicore Processor for Embedded Systems Designed in SystemJ". <i>ACM Transactions on Design Automation of Electronic Systems</i>. <b>22</b> (4): 73. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<a rel="nofollow" class="external text" href="https://doi.org/10.1145%2F3073416">10.1145/3073416</a>. <a href="ISSN_(identifier)" class="mw-redirect" title="ISSN (identifier)">ISSN</a>&nbsp;<a rel="nofollow" class="external text" href="https://search.worldcat.org/issn/1084-4309">1084-4309</a>. <a href="S2CID_(identifier)" class="mw-redirect" title="S2CID (identifier)">S2CID</a>&nbsp;<a rel="nofollow" class="external text" href="https://api.semanticscholar.org/CorpusID:11150290">11150290</a>.</cite></span>
</li>
<li id="cite_note-FOOTNOTEBloch201826-28§Item_7:_Eliminate_obsolete_object_references-57"><span class="mw-cite-backlink">^ <a href="#cite_ref-FOOTNOTEBloch201826-28§Item_7:_Eliminate_obsolete_object_references_57-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-FOOTNOTEBloch201826-28§Item_7:_Eliminate_obsolete_object_references_57-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-FOOTNOTEBloch201826-28§Item_7:_Eliminate_obsolete_object_references_57-2"><sup><i><b>c</b></i></sup></a></span> <span class="reference-text"><a href="#CITEREFBloch2018">Bloch 2018</a>, p.&nbsp;26-28, §Item 7: Eliminate obsolete object references.</span>
</li>
<li id="cite_note-58"><span class="mw-cite-backlink"><b><a href="#cite_ref-58">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html">"NullPointerException"</a>. Oracle. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20140506214735/http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html">Archived</a> from the original on May 6, 2014<span class="reference-accessdate">. Retrieved <span class="nowrap">May 6,</span> 2014</span>.</cite></span>
</li>
<li id="cite_note-59"><span class="mw-cite-backlink"><b><a href="#cite_ref-59">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.artima.com/designtechniques/exceptions.html">"Exceptions in Java"</a>. Artima.com. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20090121152332/http://www.artima.com/designtechniques/exceptions.html">Archived</a> from the original on January 21, 2009<span class="reference-accessdate">. Retrieved <span class="nowrap">August 10,</span> 2010</span>.</cite></span>
</li>
<li id="cite_note-60"><span class="mw-cite-backlink"><b><a href="#cite_ref-60">^</a></b></span> <span class="reference-text">Walter, A. (2010). Towards Certification of Java Applications for Safety Critical Projects. <i>Proceedings of Embedded Real-Time Software and Systems, ERTS2</i>, 1-7.</span>
</li>
<li id="cite_note-61"><span class="mw-cite-backlink"><b><a href="#cite_ref-61">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.oracle.com/javase/7/docs/technotes/guides/vm/performance-enhancements-7.html">"Java HotSpot™ Virtual Machine Performance Enhancements"</a>. Oracle.com. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20170529071720/http://docs.oracle.com/javase/7/docs/technotes/guides/vm/performance-enhancements-7.html">Archived</a> from the original on May 29, 2017<span class="reference-accessdate">. Retrieved <span class="nowrap">April 26,</span> 2017</span>.</cite></span>
</li>
<li id="cite_note-msdn_operator_overloading-62"><span class="mw-cite-backlink"><b><a href="#cite_ref-msdn_operator_overloading_62-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://msdn.microsoft.com/en-us/library/ms228498%28v=vs.90%29.aspx">"Operator Overloading (C# vs Java)"</a>. <i>C# for Java Developers</i>. Microsoft. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20150107190007/http://msdn.microsoft.com/en-us/library/ms228498(v=vs.90).aspx">Archived</a> from the original on January 7, 2015<span class="reference-accessdate">. Retrieved <span class="nowrap">December 10,</span> 2014</span>.</cite></span>
</li>
<li id="cite_note-oracle_multiple_inheritance-63"><span class="mw-cite-backlink"><b><a href="#cite_ref-oracle_multiple_inheritance_63-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.oracle.com/javase/tutorial/java/IandI/multipleinheritance.html">"Multiple Inheritance of State, Implementation, and Type"</a>. <i>The Java Tutorials</i>. Oracle. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20141109034520/https://docs.oracle.com/javase/tutorial/java/IandI/multipleinheritance.html">Archived</a> from the original on November 9, 2014<span class="reference-accessdate">. Retrieved <span class="nowrap">December 10,</span> 2014</span>.</cite></span>
</li>
<li id="cite_note-64"><span class="mw-cite-backlink"><b><a href="#cite_ref-64">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.oracle.com/technetwork/java/javase/9-deprecated-features-3745636.html#JDK-8074165">"Deprecated APIs, Features, and Options"</a>. Oracle. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20190619200811/https://www.oracle.com/technetwork/java/javase/9-deprecated-features-3745636.html#JDK-8074165">Archived</a> from the original on June 19, 2019<span class="reference-accessdate">. Retrieved <span class="nowrap">May 31,</span> 2019</span>.</cite></span>
</li>
<li id="cite_note-65"><span class="mw-cite-backlink"><b><a href="#cite_ref-65">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.oracle.com/javase/7/docs/api/java/applet/Applet.html">"Applet (Java Platform SE 7)"</a>. <i>Docs</i>. Oracle. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20200802033524/https://docs.oracle.com/javase/7/docs/api/java/applet/Applet.html">Archived</a> from the original on August 2, 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">May 1,</span> 2020</span>.</cite></span>
</li>
<li id="cite_note-66"><span class="mw-cite-backlink"><b><a href="#cite_ref-66">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.oracle.com/javaee/5/tutorial/doc/bnagy.html">"What Is a JSP Page? - The Java EE 5 Tutorial"</a>. <i>docs.oracle.com</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20200802003029/https://docs.oracle.com/javaee/5/tutorial/doc/bnagy.html">Archived</a> from the original on August 2, 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">May 1,</span> 2020</span>.</cite></span>
</li>
<li id="cite_note-67"><span class="mw-cite-backlink"><b><a href="#cite_ref-67">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.oracle.com/javase/tutorial/uiswing/">"Trail: Creating a GUI With JFC/Swing (The Java Tutorials)"</a>. <i>docs.oracle.com</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20200429104302/https://docs.oracle.com/javase/tutorial/uiswing/">Archived</a> from the original on April 29, 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">May 1,</span> 2020</span>.</cite></span>
</li>
<li id="cite_note-68"><span class="mw-cite-backlink"><b><a href="#cite_ref-68">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.infoworld.com/article/3305073/removed-from-jdk-11-javafx-11-arrives-as-a-standalone-module.html">"Removed from JDK 11, JavaFX 11 arrives as a standalone module"</a>. <i>InfoWorld</i>. September 20, 2018. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20201014141716/https://www.infoworld.com/article/3305073/removed-from-jdk-11-javafx-11-arrives-as-a-standalone-module.html">Archived</a> from the original on October 14, 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">October 13,</span> 2020</span>.</cite></span>
</li>
<li id="cite_note-69"><span class="mw-cite-backlink"><b><a href="#cite_ref-69">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.oracle.com/javafx/2/get_started/hello_world.htm">"Getting Started with JavaFX: Hello World, JavaFX Style"</a>. <i>JavaFX 2 Tutorials and Documentation</i>. Oracle. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20200802013650/https://docs.oracle.com/javafx/2/get_started/hello_world.htm">Archived</a> from the original on August 2, 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">May 1,</span> 2020</span>.</cite></span>
</li>
<li id="cite_note-70"><span class="mw-cite-backlink"><b><a href="#cite_ref-70">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://raw.githubusercontent.com/namin/unsound/master/doc/unsound-oopsla16.pdf">"Java and Scala's Type Systems are Unsound"</a> <span class="cs1-format">(PDF)</span>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20161128174902/https://raw.githubusercontent.com/namin/unsound/master/doc/unsound-oopsla16.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on November 28, 2016<span class="reference-accessdate">. Retrieved <span class="nowrap">February 20,</span> 2017</span>.</cite></span>
</li>
<li id="cite_note-71"><span class="mw-cite-backlink"><b><a href="#cite_ref-71">^</a></b></span> <span class="reference-text"><cite id="CITEREFArnold2005" class="citation web cs1">Arnold, Ken (June 27, 2005). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20071010002142/http://weblogs.java.net/blog/arnold/archive/2005/06/generics_consid_1.html">"Generics Considered Harmful"</a>. java.net. Archived from <a rel="nofollow" class="external text" href="https://weblogs.java.net/blog/arnold/archive/2005/06/generics_consid_1.html">the original</a> on October 10, 2007<span class="reference-accessdate">. Retrieved <span class="nowrap">September 10,</span> 2015</span>.</cite></span>
</li>
<li id="cite_note-72"><span class="mw-cite-backlink"><b><a href="#cite_ref-72">^</a></b></span> <span class="reference-text"><cite id="CITEREFOwens" class="citation web cs1">Owens, Sean R. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20090220171410/http://darksleep.com/player/JavaAndUnsignedTypes.html">"Java and unsigned int, unsigned short, unsigned byte, unsigned long, etc. (Or rather, the lack thereof)"</a>. Archived from <a rel="nofollow" class="external text" href="http://darksleep.com/player/JavaAndUnsignedTypes.html">the original</a> on February 20, 2009<span class="reference-accessdate">. Retrieved <span class="nowrap">July 4,</span> 2011</span>.</cite></span>
</li>
<li id="cite_note-73"><span class="mw-cite-backlink"><b><a href="#cite_ref-73">^</a></b></span> <span class="reference-text"><cite id="CITEREFKahan1998" class="citation web cs1">Kahan, William (March 1, 1998). <a rel="nofollow" class="external text" href="http://www.cs.berkeley.edu/~wkahan/JAVAhurt.pdf">"How Java's Floating-Point Hurts Everyone Everywhere – ACM 1998 Workshop on Java (Stanford)"</a> <span class="cs1-format">(PDF)</span>. Electrical Engineering &amp; Computer Science, University of California at Berkeley. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20120905004527/http://www.cs.berkeley.edu/~wkahan/JAVAhurt.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on September 5, 2012<span class="reference-accessdate">. Retrieved <span class="nowrap">June 4,</span> 2011</span>.</cite></span>
</li>
<li id="cite_note-74"><span class="mw-cite-backlink"><b><a href="#cite_ref-74">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20120921140402/http://blogs.technet.com/b/mmpc/archive/2010/10/18/have-you-checked-the-java.aspx">"Have you checked the Java?"</a>. Archived from <a rel="nofollow" class="external text" href="http://blogs.technet.com/b/mmpc/archive/2010/10/18/have-you-checked-the-java.aspx">the original</a> on September 21, 2012<span class="reference-accessdate">. Retrieved <span class="nowrap">December 23,</span> 2011</span>.</cite></span>
</li>
<li id="cite_note-75"><span class="mw-cite-backlink"><b><a href="#cite_ref-75">^</a></b></span> <span class="reference-text"><cite id="CITEREFChidester" class="citation book cs1">Chidester, Ashlan. <a rel="nofollow" class="external text" href="https://www.vlebooks.com/vleweb/product/openreader?id=none&amp;isbn=9798224253951"><i>Java Persistence API, Jenkins and AWS</i></a>. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>9798224253951</bdi><span class="reference-accessdate">. Retrieved <span class="nowrap">September 16,</span> 2024</span>.</cite></span>
</li>
<li id="cite_note-76"><span class="mw-cite-backlink"><b><a href="#cite_ref-76">^</a></b></span> <span class="reference-text"><cite id="CITEREFCadenhead2017" class="citation cs2">Cadenhead, Rogers (November 20, 2017), <a rel="nofollow" class="external text" href="http://www.informit.com/articles/article.aspx?p=2832404&amp;seqNum=4"><i>Understanding How Java Programs Work</i></a>, <a rel="nofollow" class="external text" href="https://web.archive.org/web/20210813193850/https://www.informit.com/articles/article.aspx?p=2832404&amp;seqNum=4">archived</a> from the original on August 13, 2021<span class="reference-accessdate">, retrieved <span class="nowrap">March 26,</span> 2019</span></cite></span>
</li>
<li id="cite_note-77"><span class="mw-cite-backlink"><b><a href="#cite_ref-77">^</a></b></span> <span class="reference-text"><cite id="CITEREFWoolf2016" class="citation news cs1">Woolf, Nicky (May 26, 2016). <a rel="nofollow" class="external text" href="https://www.theguardian.com/technology/2016/may/26/google-wins-copyright-lawsuit-oracle-java-code">"Google wins six-year legal battle with Oracle over Android code copyright"</a>. <i>The Guardian</i>. <a href="ISSN_(identifier)" class="mw-redirect" title="ISSN (identifier)">ISSN</a>&nbsp;<a rel="nofollow" class="external text" href="https://search.worldcat.org/issn/0261-3077">0261-3077</a>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20190326203847/https://www.theguardian.com/technology/2016/may/26/google-wins-copyright-lawsuit-oracle-java-code">Archived</a> from the original on March 26, 2019<span class="reference-accessdate">. Retrieved <span class="nowrap">March 26,</span> 2019</span>.</cite></span>
</li>
<li id="cite_note-FOOTNOTEBloch20181–4§&amp;nbsp;1_Introduction-78"><span class="mw-cite-backlink">^ <a href="#cite_ref-FOOTNOTEBloch20181–4§&amp;nbsp;1_Introduction_78-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-FOOTNOTEBloch20181–4§&amp;nbsp;1_Introduction_78-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><a href="#CITEREFBloch2018">Bloch 2018</a>, pp.&nbsp;1–4, §&nbsp;1 Introduction.</span>
</li>
<li id="cite_note-79"><span class="mw-cite-backlink"><b><a href="#cite_ref-79">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.oracle.com/javase/8/docs/api/java/nio/package-summary.html">"java.nio (Java Platform SE 8)"</a>. <i>docs.oracle.com</i>.</cite></span>
</li>
<li id="cite_note-80"><span class="mw-cite-backlink"><b><a href="#cite_ref-80">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.oracle.com/javase/8/docs/technotes/guides/net/">"Java Networking"</a>. <i>docs.oracle.com</i>.</cite></span>
</li>
<li id="cite_note-81"><span class="mw-cite-backlink"><b><a href="#cite_ref-81">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpClient.html">"HttpClient (Java SE 11 &amp; JDK 11)"</a>. <i>docs.oracle.com</i>.</cite></span>
</li>
<li id="cite_note-collections-82"><span class="mw-cite-backlink"><b><a href="#cite_ref-collections_82-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://docs.oracle.com/javase/8/docs/technotes/guides/collections/overview.html">"Collections Framework Overview"</a>. <i>Java Documentation</i>. Oracle. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20141231132540/http://docs.oracle.com/javase/8/docs/technotes/guides/collections/overview.html">Archived</a> from the original on December 31, 2014<span class="reference-accessdate">. Retrieved <span class="nowrap">December 18,</span> 2014</span>.</cite></span>
</li>
<li id="cite_note-security-83"><span class="mw-cite-backlink"><b><a href="#cite_ref-security_83-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://docs.oracle.com/javase/8/docs/technotes/guides/security/overview/jsoverview.html">"Java Security Overview"</a>. <i>Java Documentation</i>. Oracle. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20150103045031/http://docs.oracle.com/javase/8/docs/technotes/guides/security/overview/jsoverview.html">Archived</a> from the original on January 3, 2015<span class="reference-accessdate">. Retrieved <span class="nowrap">December 18,</span> 2014</span>.</cite></span>
</li>
<li id="cite_note-i18n-84"><span class="mw-cite-backlink"><b><a href="#cite_ref-i18n_84-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://docs.oracle.com/javase/tutorial/i18n/">"Trail: Internationalization"</a>. <i>The Java Tutorials</i>. Oracle. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20141231053232/http://docs.oracle.com/javase/tutorial/i18n/">Archived</a> from the original on December 31, 2014<span class="reference-accessdate">. Retrieved <span class="nowrap">December 18,</span> 2014</span>.</cite></span>
</li>
<li id="cite_note-javadoc_comments-85"><span class="mw-cite-backlink"><b><a href="#cite_ref-javadoc_comments_85-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.oracle.com/technetwork/articles/java/index-137868.html">"How to Write Doc Comments for the Javadoc Tool"</a>. <i>Oracle Technology Network</i>. Oracle. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20141218182906/http://www.oracle.com/technetwork/articles/java/index-137868.html">Archived</a> from the original on December 18, 2014<span class="reference-accessdate">. Retrieved <span class="nowrap">December 18,</span> 2014</span>.</cite></span>
</li>
<li id="cite_note-86"><span class="mw-cite-backlink"><b><a href="#cite_ref-86">^</a></b></span> <span class="reference-text"><cite id="CITEREFNiccolai2001" class="citation news cs1">Niccolai, James (January 24, 2001). <a rel="nofollow" class="external text" href="https://www.infoworld.com/article/2074908/sun-microsoft-settle-java-lawsuit.html">"Sun, Microsoft settle Java lawsuit"</a>. <i><a href="JavaWorld" class="mw-redirect" title="JavaWorld">JavaWorld</a></i>. <a href="IDG_News_Service" class="mw-redirect" title="IDG News Service">IDG News Service</a>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20200714001541/https://www.infoworld.com/article/2074908/sun-microsoft-settle-java-lawsuit.html">Archived</a> from the original on July 14, 2020<span class="reference-accessdate">. Retrieved <span class="nowrap">July 13,</span> 2020</span>.</cite></span>
</li>
<li id="cite_note-87"><span class="mw-cite-backlink"><b><a href="#cite_ref-87">^</a></b></span> <span class="reference-text"><cite id="CITEREFvan_Gurp2007" class="citation web cs1 cs1-prop-unfit">van Gurp, Jilles (November 13, 2007). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20080828111808/http://www.javalobby.org/nl/archive/jlnews_20071113o.html">"Google Android: Initial Impressions and Criticism"</a>. <i>Javalobby</i>. Archived from the original on August 28, 2008<span class="reference-accessdate">. Retrieved <span class="nowrap">March 7,</span> 2009</span>. <q><i>Frankly, I don't understand why Google intends to ignore the vast amount of existing implementation out there. It seems like a bad case of "not invented here" to me. Ultimately, this will slow adoption. There are already too many Java platforms for the mobile world and this is yet another one</i></q></cite></span>
</li>
<li id="cite_note-88"><span class="mw-cite-backlink"><b><a href="#cite_ref-88">^</a></b></span> <span class="reference-text"><cite id="CITEREFMullin2012" class="citation web cs1">Mullin, Joe (May 7, 2012). <a rel="nofollow" class="external text" href="https://arstechnica.com/tech-policy/news/2012/05/jury-rules-google-violated-copyright-law-google-moves-for-mistrial.ars">"Google guilty of infringement in Oracle trial; future legal headaches loom"</a>. <i>Law &amp; Disorder</i>. Ars Technica. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20120508134916/http://arstechnica.com/tech-policy/news/2012/05/jury-rules-google-violated-copyright-law-google-moves-for-mistrial.ars">Archived</a> from the original on May 8, 2012<span class="reference-accessdate">. Retrieved <span class="nowrap">May 8,</span> 2012</span>.</cite></span>
</li>
<li id="cite_note-89"><span class="mw-cite-backlink"><b><a href="#cite_ref-89">^</a></b></span> <span class="reference-text"><cite id="CITEREFMullin2012" class="citation web cs1">Mullin, Joe (May 31, 2012). <a rel="nofollow" class="external text" href="https://arstechnica.com/tech/2012/05/google-wins-crucial-api-ruling-oracles-case-decimated/">"Google wins crucial API ruling, Oracle's case decimated"</a>. <i>Ars Technica</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20170312065520/https://arstechnica.com/tech-policy/2012/05/google-wins-crucial-api-ruling-oracles-case-decimated/">Archived</a> from the original on March 12, 2017<span class="reference-accessdate">. Retrieved <span class="nowrap">June 1,</span> 2012</span>.</cite></span>
</li>
<li id="cite_note-cnet_appeals-90"><span class="mw-cite-backlink"><b><a href="#cite_ref-cnet_appeals_90-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFRosenblatt,_Seth2014" class="citation news cs1">Rosenblatt, Seth (May 9, 2014). <a rel="nofollow" class="external text" href="https://www.cnet.com/news/court-sides-with-oracle-over-android-in-java-patent-appeal/">"Court sides with Oracle over Android in Java patent appeal"</a>. <i>CNET</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20140510203805/http://www.cnet.com/news/court-sides-with-oracle-over-android-in-java-patent-appeal/">Archived</a> from the original on May 10, 2014<span class="reference-accessdate">. Retrieved <span class="nowrap">May 10,</span> 2014</span>.</cite></span>
</li>
<li id="cite_note-91"><span class="mw-cite-backlink"><b><a href="#cite_ref-91">^</a></b></span> <span class="reference-text"><cite id="CITEREFMullin2016" class="citation web cs1">Mullin, Joe (May 26, 2016). <a rel="nofollow" class="external text" href="https://arstechnica.com/tech-policy/2016/05/google-wins-trial-against-oracle-as-jury-finds-android-is-fair-use/">"Google beats Oracle—Android makes "fair use" of Java APIs"</a>. <i>Ars Technica</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20170120164551/http://arstechnica.com/tech-policy/2016/05/google-wins-trial-against-oracle-as-jury-finds-android-is-fair-use/">Archived</a> from the original on January 20, 2017<span class="reference-accessdate">. Retrieved <span class="nowrap">May 26,</span> 2016</span>.</cite></span>
</li>
<li id="cite_note-92"><span class="mw-cite-backlink"><b><a href="#cite_ref-92">^</a></b></span> <span class="reference-text"><cite id="CITEREFFarivar2018" class="citation web cs1">Farivar, Cyrus (March 27, 2018). <a rel="nofollow" class="external text" href="https://arstechnica.com/tech-policy/2018/03/googles-use-of-the-java-api-packages-was-not-fair-appeals-court-rules/">""Google's use of the Java API packages was not fair," appeals court rules"</a>. <i>Ars Technica</i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20190924081919/https://arstechnica.com/tech-policy/2018/03/googles-use-of-the-java-api-packages-was-not-fair-appeals-court-rules/">Archived</a> from the original on September 24, 2019<span class="reference-accessdate">. Retrieved <span class="nowrap">August 6,</span> 2019</span>.</cite></span>
</li>
<li id="cite_note-93"><span class="mw-cite-backlink"><b><a href="#cite_ref-93">^</a></b></span> <span class="reference-text"><cite id="CITEREFLee2019" class="citation web cs1">Lee, Timothy (April 23, 2019). <a rel="nofollow" class="external text" href="https://arstechnica.com/tech-policy/2019/01/google-asks-supreme-court-to-overrule-disastrous-ruling-on-api-copyrights/">"Google asks Supreme Court to overrule disastrous ruling on API copyrights"</a>. <i><a href="Ars_Technica" title="Ars Technica">Ars Technica</a></i>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20190423084450/https://arstechnica.com/tech-policy/2019/01/google-asks-supreme-court-to-overrule-disastrous-ruling-on-api-copyrights/">Archived</a> from the original on April 23, 2019<span class="reference-accessdate">. Retrieved <span class="nowrap">April 23,</span> 2019</span>.</cite></span>
</li>
<li id="cite_note-94"><span class="mw-cite-backlink"><b><a href="#cite_ref-94">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.supremecourt.gov/opinions/20pdf/18-956_d18f.pdf">"<i>Google LLC v. Oracle America, Inc</i> 593 U. S. ____ (2021)"</a> <span class="cs1-format">(PDF)</span>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20210405140150/https://www.supremecourt.gov/opinions/20pdf/18-956_d18f.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on April 5, 2021<span class="reference-accessdate">. Retrieved <span class="nowrap">April 6,</span> 2021</span>.</cite></span>
</li>
</ol></div></div>
<div class="mw-heading mw-heading2"><h2 id="Bibliography">Bibliography</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239549316">
/* start https://en.wikipedia.org/ */


.mw-parser-output .refbegin{margin-bottom:0.5em}.mw-parser-output .refbegin-hanging-indents>ul{margin-left:0}.mw-parser-output .refbegin-hanging-indents>ul>li{margin-left:0;padding-left:3.2em;text-indent:-3.2em}.mw-parser-output .refbegin-hanging-indents ul,.mw-parser-output .refbegin-hanging-indents ul li{list-style:none}@media(max-width:720px){.mw-parser-output .refbegin-hanging-indents>ul>li{padding-left:1.6em;text-indent:-1.6em}}.mw-parser-output .refbegin-columns{margin-top:0.3em}.mw-parser-output .refbegin-columns ul{margin-top:0}.mw-parser-output .refbegin-columns li{page-break-inside:avoid;break-inside:avoid-column}@media screen{.mw-parser-output .refbegin{font-size:90%}}


/* end https://en.wikipedia.org/ */
</style><div class="refbegin" style="">
<ul><li><cite id="CITEREFBloch2018" class="citation book cs1">Bloch, Joshua (2018). <i>Effective Java: Programming Language Guide</i> (Third&nbsp;ed.). Addison-Wesley. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>978-0-13-468599-1</bdi>.</cite></li>
<li><cite id="CITEREFGoslingJoySteeleBracha2005" class="citation book cs1">Gosling, James; <a href="Bill_Joy" title="Bill Joy">Joy, Bill</a>; <a href="Guy_L._Steele%2C_Jr." class="mw-redirect" title="Guy L. Steele, Jr.">Steele, Guy L. Jr.</a>; <a href="Gilad_Bracha" title="Gilad Bracha">Bracha, Gilad</a> (2005). <a rel="nofollow" class="external text" href="https://java.sun.com/docs/books/jls/"><i>The Java Language Specification</i></a> (3rd&nbsp;ed.). Addison-Wesley. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>0-321-24678-0</bdi>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20120214061826/http://java.sun.com/docs/books/jls/">Archived</a> from the original on February 14, 2012<span class="reference-accessdate">. Retrieved <span class="nowrap">February 8,</span> 2019</span>.</cite></li>
<li><cite id="CITEREFGoslingJoySteeleBracha2014" class="citation book cs1">Gosling, James; Joy, Bill; Steele, Guy; Bracha, Gilad; Buckley, Alex (2014). <a rel="nofollow" class="external text" href="https://docs.oracle.com/javase/specs/jls/se8/jls8.pdf"><i>The Java® Language Specification</i></a> <span class="cs1-format">(PDF)</span> (Java SE 8&nbsp;ed.). <a rel="nofollow" class="external text" href="https://web.archive.org/web/20141021061951/http://docs.oracle.com/javase/specs/jls/se8/jls8.pdf">Archived</a> <span class="cs1-format">(PDF)</span> from the original on October 21, 2014<span class="reference-accessdate">. Retrieved <span class="nowrap">November 18,</span> 2014</span>.</cite></li>
<li><cite id="CITEREFLindholmYellin1999" class="citation book cs1">Lindholm, Tim; Yellin, Frank (1999). <a rel="nofollow" class="external text" href="https://java.sun.com/docs/books/vmspec/2nd-edition/html/VMSpecTOC.doc.html"><i>The Java Virtual Machine Specification</i></a> (2nd&nbsp;ed.). Addison-Wesley. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>0-201-43294-3</bdi>. <a rel="nofollow" class="external text" href="https://web.archive.org/web/20110925050249/http://java.sun.com/docs/books/vmspec/2nd-edition/html/VMSpecTOC.doc.html">Archived</a> from the original on September 25, 2011<span class="reference-accessdate">. Retrieved <span class="nowrap">February 8,</span> 2019</span>.</cite></li></ul>
</div>
<div class="mw-heading mw-heading2"><h2 id="External_links">External links</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1290876196">
/* start https://en.wikipedia.org/ */


.mw-parser-output .side-box{margin:4px 0;box-sizing:border-box;border:1px solid #aaa;font-size:88%;line-height:1.25em;background-color:var(--background-color-interactive-subtle,#f8f9fa);display:flow-root}.mw-parser-output .infobox .side-box{font-size:100%}.mw-parser-output .side-box-abovebelow,.mw-parser-output .side-box-text{padding:0.25em 0.9em}.mw-parser-output .side-box-image{padding:2px 0 2px 0.9em;text-align:center}.mw-parser-output .side-box-imageright{padding:2px 0.9em 2px 0;text-align:center}@media(min-width:500px){.mw-parser-output .side-box-flex{display:flex;align-items:center}.mw-parser-output .side-box-text{flex:1;min-width:0}}@media(min-width:720px){.mw-parser-output .side-box{width:238px}.mw-parser-output .side-box-right{clear:right;float:right;margin-left:1em}.mw-parser-output .side-box-left{margin-right:1em}}


/* end https://en.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r1250146164">
/* start https://en.wikipedia.org/ */


.mw-parser-output .sister-box .side-box-abovebelow{padding:0.75em 0;text-align:center}.mw-parser-output .sister-box .side-box-abovebelow>b{display:block}.mw-parser-output .sister-box .side-box-text>ul{border-top:1px solid #aaa;padding:0.75em 0;width:217px;margin:0 auto}.mw-parser-output .sister-box .side-box-text>ul>li{min-height:31px}.mw-parser-output .sister-logo{display:inline-block;width:31px;line-height:31px;vertical-align:middle;text-align:center}.mw-parser-output .sister-link{display:inline-block;margin-left:4px;width:182px;vertical-align:middle}@media print{body.ns-0 .mw-parser-output .sistersitebox{display:none!important}}@media screen{html.skin-theme-clientpref-night .mw-parser-output .sistersitebox img[src*="Wiktionary-logo-v2.svg"]{background-color:white}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .sistersitebox img[src*="Wiktionary-logo-v2.svg"]{background-color:white}}


/* end https://en.wikipedia.org/ */
</style>
<style data-mw-deduplicate="TemplateStyles:r1237033735">
/* start https://en.wikipedia.org/ */


@media print{body.ns-0 .mw-parser-output .sistersitebox{display:none!important}}@media screen{html.skin-theme-clientpref-night .mw-parser-output .sistersitebox img[src*="Wiktionary-logo-en-v2.svg"]{background-color:white}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .sistersitebox img[src*="Wiktionary-logo-en-v2.svg"]{background-color:white}}


/* end https://en.wikipedia.org/ */
</style><div class="side-box side-box-right sistersitebox">
<div class="side-box-flex">
<div class="side-box-image"><span class="noviewer" typeof="mw:File"></span></div>
<div class="side-box-text plainlist">Wikiversity has learning resources about <i><b><a href="https://en.wikiversity.org/wiki/Java_Platform,_Enterprise_Edition/Java_EE_Tutorial" class="extiw external" title="v:Java Platform, Enterprise Edition/Java EE Tutorial">Java Platform, Enterprise Edition/Java EE Tutorial</a></b></i></div></div>
</div>
<ul><li><span class="official-website"><span class="url"><a rel="nofollow" class="external text" href="http://jdk.java.net">Official website</a></span></span>, OpenJDK, Oracle</li>
<li><a rel="nofollow" class="external text" href="https://adoptium.net/">JDK builds, Adoptium</a></li></ul>
<div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1236075235">
/* start https://en.wikipedia.org/ */


.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}


/* end https://en.wikipedia.org/ */
</style></div><div role="navigation" class="navbox" aria-labelledby="Java_(software_platform)419" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="3"><div id="Java_(software_platform)419" style="font-size:114%;margin:0 4em"><a href="Java_(software_platform)" title="Java (software platform)">Java (software platform)</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Platforms</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Java_virtual_machine" title="Java virtual machine">JVM</a></li>
<li><a href="Java_Platform%2C_Micro_Edition" title="Java Platform, Micro Edition">Java ME</a> (Micro)</li>
<li><a href="Java_Platform%2C_Standard_Edition" title="Java Platform, Standard Edition">Java SE</a> (Standard)</li>
<li><a href="Jakarta_EE" title="Jakarta EE">Jakarta EE</a> (Enterprise)</li>
<li><a href="Java_Card" title="Java Card">Java Card</a></li>
<li><a href="Android_software_development#SDK" title="Android software development">Android SDK</a></li>
<li><a href="GraalVM" title="GraalVM">GraalVM</a></li></ul>
</div></td><td class="noviewer navbox-image" rowspan="5" style="width:1px;padding:0 0 0 2px"><div><span typeof="mw:File"></span></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Technologies</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%">Oracle</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Squawk_virtual_machine" title="Squawk virtual machine">Squawk</a></li>
<li><a href="Java_Development_Kit" title="Java Development Kit">Java Development Kit</a></li>
<li><a href="OpenJDK" title="OpenJDK">OpenJDK</a></li>
<li><a href="Java_virtual_machine" title="Java virtual machine">Java virtual machine</a></li>
<li><a href="JavaFX" title="JavaFX">JavaFX</a></li>
<li><a href="Maxine_Virtual_Machine" title="Maxine Virtual Machine">Maxine VM</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Platform</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Java_applet" title="Java applet">Applets</a></li>
<li><a href="Jakarta_Servlet" title="Jakarta Servlet">Servlets</a></li>
<li><a href="MIDlet" title="MIDlet">MIDlets</a></li>
<li><a href="Jakarta_Server_Pages" title="Jakarta Server Pages">JSP</a></li>
<li><a href="Jakarta_Faces" title="Jakarta Faces">JSF</a></li>
<li><a href="Java_Web_Start" title="Java Web Start">Web Start</a> (JNLP)</li>
<li><a href="Pack200" title="Pack200">Pack200</a></li>
<li><a href="Java_Platform_Module_System" title="Java Platform Module System">Modules</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Major<br>third-party</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Blackdown_Java" title="Blackdown Java">Blackdown</a></li>
<li><a href="Eclipse_(software)" title="Eclipse (software)">Eclipse</a></li>
<li><a href="GNU_Classpath" title="GNU Classpath">GNU Classpath</a></li>
<li><a href="Google_Web_Toolkit" title="Google Web Toolkit">GWT</a></li>
<li><a href="Apache_Harmony" title="Apache Harmony">Harmony</a></li>
<li><a href="Hibernate_(framework)" title="Hibernate (framework)">Hibernate</a></li>
<li><a href="IcedTea" title="IcedTea">IcedTea</a></li>
<li><a href="Jazelle" title="Jazelle">Jazelle</a></li>
<li><a href="Spring_Framework" title="Spring Framework">Spring</a></li>
<li><a href="Apache_Struts" title="Apache Struts">Struts</a></li>
<li><a href="Oracle_TopLink" title="Oracle TopLink">TopLink</a></li>
<li><a href="WildFly" title="WildFly">WildFly</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">History</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Java_version_history" title="Java version history">Java version history</a></li>
<li><a href="Java_Community_Process" title="Java Community Process">Java Community Process</a></li>
<li><a href="Sun_Microsystems" title="Sun Microsystems">Sun Microsystems</a></li>
<li><a href="Free_Java_implementations" title="Free Java implementations">Free Java implementations</a></li>
<li>Slogan: <i><a href="Write_once%2C_run_anywhere" title="Write once, run anywhere">Write once, run anywhere</a></i></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="List_of_JVM_languages" title="List of JVM languages">JVM<br>languages</a></th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul>
<li><a href="BeanShell" title="BeanShell">BeanShell</a></li>
<li><a href="Clojure" title="Clojure">Clojure</a></li>
<li><a href="Groovy_(programming_language)" class="mw-redirect" title="Groovy (programming language)">Groovy</a></li>
<li><a href="JRuby" title="JRuby">JRuby</a></li>
<li><a href="Jython" title="Jython">Jython</a></li>
<li><a href="Kotlin_(programming_language)" title="Kotlin (programming language)">Kotlin</a></li>
<li><a href="Processing" title="Processing">Processing</a></li>
<li><a href="Rhino_(JavaScript_engine)" title="Rhino (JavaScript engine)">Rhino</a></li>
<li><a href="Scala_(programming_language)" title="Scala (programming language)">Scala</a></li>
<li><a href="Oxygene_(programming_language)" title="Oxygene (programming language)">Oxygene</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Community</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%">Conferences</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="JavaOne" title="JavaOne">JavaOne</a></li>
<li><a href="Devoxx" title="Devoxx">Devoxx</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Organizations</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Apache_Software_Foundation" class="mw-redirect" title="Apache Software Foundation">Apache Software Foundation</a></li>
<li><a href="Eclipse_Foundation" title="Eclipse Foundation">Eclipse Foundation</a></li>
<li><a href="Java_Community_Process" title="Java Community Process">Java Community Process</a></li>
<li><a href="Oracle_Corporation" title="Oracle Corporation">Oracle Corporation</a></li>
<li><a href="Sun_Microsystems" title="Sun Microsystems">Sun Microsystems</a>, <a href="Sun_Microsystems_Laboratories" class="mw-redirect" title="Sun Microsystems Laboratories">Sun Microsystems Laboratories</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">People</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="James_Gosling" title="James Gosling">James Gosling</a></li>
<li><a href="Arthur_van_Hoff" title="Arthur van Hoff">Arthur van Hoff</a></li>
<li><a href="Urs_H%C3%B6lzle" title="Urs Hölzle">Urs Hölzle</a></li>
<li><a href="Patrick_Naughton" class="new" title="Patrick Naughton (page does not exist)">Patrick Naughton</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><td class="navbox-abovebelow" colspan="3"><div><span class="noviewer" typeof="mw:File"><span title="Category"></span></span> <b>Category</b> • <span class="nowrap"><span class="skin-invert-image noviewer" typeof="mw:File"></span> </span><a href="Portal%3AComputer_programming" title="Portal:Computer programming">Computer programming portal</a></div></td></tr></tbody></table></div>
<div class="navbox-styles"></div><div role="navigation" class="navbox" aria-labelledby="Sun_Microsystems214" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="3"><div id="Sun_Microsystems214" style="font-size:114%;margin:0 4em"><a href="Sun_Microsystems" title="Sun Microsystems">Sun Microsystems</a></div></th></tr><tr><td class="navbox-abovebelow" colspan="3"><div><a href="Acquisition_of_Sun_Microsystems_by_Oracle_Corporation" title="Acquisition of Sun Microsystems by Oracle Corporation">Acquired by Oracle</a></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Hardware</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%">Systems</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Sun-1" title="Sun-1">Sun-1</a></li>
<li><a href="Sun-2" title="Sun-2">Sun-2</a></li>
<li><a href="Sun-3" title="Sun-3">Sun-3</a></li>
<li><a href="Sun386i" title="Sun386i">Sun386i</a></li>
<li><a href="Sun-4" title="Sun-4">Sun-4</a></li>
<li><a href="SPARCstation" title="SPARCstation">SPARCstation</a>–server–center
<ul><li><a href="SPARCstation_1" title="SPARCstation 1">1</a></li>
<li><a href="SPARCstation_2" title="SPARCstation 2">2</a></li>
<li><a href="SPARCstation_4" class="mw-redirect" title="SPARCstation 4">4</a></li>
<li><a href="SPARCstation_5" title="SPARCstation 5">5</a></li>
<li><a href="SPARCstation_10" title="SPARCstation 10">10</a></li>
<li><a href="SPARCstation_20" title="SPARCstation 20">20</a></li>
<li><a href="SPARCclassic" title="SPARCclassic">classic</a></li>
<li><a href="SPARCstation_IPC" title="SPARCstation IPC">IPC</a></li>
<li><a href="SPARCstation_IPX" title="SPARCstation IPX">IPX</a></li>
<li><a href="SPARCstation_LX" title="SPARCstation LX">LX</a></li>
<li><a href="SPARCstation_ZX" title="SPARCstation ZX">ZX</a></li></ul></li>
<li><a href="Sun_Netra" title="Sun Netra">Netra</a></li>
<li><a href="Sun_Ultra" title="Sun Ultra">Ultra</a>
<ul><li><a href="Ultra_1" title="Ultra 1">1</a></li>
<li><a href="Ultra_2" class="mw-redirect" title="Ultra 2">2</a></li>
<li><a href="Ultra_5/10" title="Ultra 5/10">5</a></li>
<li><a href="Ultra_5/10" title="Ultra 5/10">10</a></li>
<li><a href="Ultra_24" title="Ultra 24">24</a></li>
<li><a href="Ultra_30" title="Ultra 30">30</a></li>
<li><a href="Ultra_60" title="Ultra 60">60</a></li>
<li><a href="Ultra_80" title="Ultra 80">80</a></li></ul></li>
<li><a href="Sun_Enterprise" title="Sun Enterprise">Enterprise</a>
<ul><li><a href="Sun_Enterprise_10000" class="mw-redirect" title="Sun Enterprise 10000">10000</a></li></ul></li>
<li><a href="Sun_Blade" title="Sun Blade">Blade server</a></li>
<li><a href="Sun_Blade_(workstation)" title="Sun Blade (workstation)">Blade workstation</a></li>
<li><a href="Sun_Fire" title="Sun Fire">Fire</a>
<ul><li><a href="Sun_Fire_12K" class="mw-redirect" title="Sun Fire 12K">12K</a></li>
<li><a href="Sun_Fire_15K" title="Sun Fire 15K">15K</a></li>
<li><a href="Sun_Fire_E25K" class="mw-redirect" title="Sun Fire E25K">E25K</a></li>
<li><a href="Sun_Fire_T2000" title="Sun Fire T2000">T2000</a></li>
<li><a href="Sun_Fire_X4500" title="Sun Fire X4500">X4500</a></li></ul></li>
<li><a href="SPARC_Enterprise" title="SPARC Enterprise">SPARC Enterprise</a></li>
<li><a href="JavaStation" title="JavaStation">JavaStation</a></li>
<li><a href="Sun_Java_Workstation" title="Sun Java Workstation">Java Workstation</a></li>
<li><a href="Sun_Ray" title="Sun Ray">Ray</a></li>
<li><a href="Cobalt_Qube" title="Cobalt Qube">Cobalt Qube</a></li>
<li><a href="Cobalt_RaQ" title="Cobalt RaQ">Cobalt RaQ</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Processors</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="SPARC" title="SPARC">SPARC</a></li>
<li><a href="MB86900" title="MB86900">MB86900</a></li>
<li><a href="MicroSPARC" title="MicroSPARC">microSPARC</a></li>
<li><a href="SuperSPARC" title="SuperSPARC">SuperSPARC</a></li>
<li><a href="UltraSPARC" title="UltraSPARC">UltraSPARC</a></li>
<li><a href="UltraSPARC_II" title="UltraSPARC II">UltraSPARC II</a>
<ul><li>UltraSPARC IIe</li>
<li>UltraSPARC IIi</li>
<li>Gemini</li></ul></li>
<li><a href="UltraSPARC_III" title="UltraSPARC III">UltraSPARC III</a>
<ul><li>UltraSPARC III Cu</li>
<li>UltraSPARC IIIi</li></ul></li>
<li><a href="UltraSPARC_IV" title="UltraSPARC IV">UltraSPARC IV</a></li>
<li><a href="UltraSPARC_T1" title="UltraSPARC T1">UltraSPARC T1</a></li>
<li><a href="UltraSPARC_T2" title="UltraSPARC T2">UltraSPARC T2</a></li>
<li><a href="SPARC_T3" title="SPARC T3">SPARC T3</a></li>
<li><a href="SPARC_T4" title="SPARC T4">SPARC T4</a></li>
<li><a href="SPARC_T5" title="SPARC T5">SPARC T5</a></li>
<li><a href="Rock_(processor)" title="Rock (processor)">Rock</a></li>
<li><a href="MAJC" title="MAJC">MAJC</a></li></ul>
</div></td></tr><tr><td colspan="2" class="navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Sun4d" title="Sun4d">Sun4d</a></li>
<li><a href="SBus" title="SBus">SBus</a></li>
<li><a href="Fireplane" title="Fireplane">Fireplane</a></li>
<li><a href="LOM_port" title="LOM port">LOM port</a></li>
<li><a href="MBus_(SPARC)" title="MBus (SPARC)">MBus</a></li>
<li><a href="Sun_Modular_Datacenter" title="Sun Modular Datacenter">Modular Datacenter</a></li>
<li><a href="Sun_Neptune" title="Sun Neptune">Neptune</a></li>
<li><a href="System_Service_Processor" title="System Service Processor">System Service Processor</a></li>
<li><a href="SPARC_T_series" title="SPARC T series">SPARC T series</a></li>
<li><a href="Sun_SPOT" title="Sun SPOT">SPOT</a></li>
<li><a href="Ultra_Port_Architecture" title="Ultra Port Architecture">Ultra Port Architecture</a></li>
<li><a href="Visual_Instruction_Set" title="Visual Instruction Set">Visual Instruction Set</a></li></ul>
</div></td></tr></tbody></table><div></div></td><td class="noviewer navbox-image" rowspan="9" style="width:1px;padding:0 0 0 2px"><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Software</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="TOPS_(file_server)" title="TOPS (file server)">TOPS</a></li>
<li><a href="SunOS" title="SunOS">SunOS</a></li>
<li><a href="Oracle_Solaris" title="Oracle Solaris">Solaris</a></li>
<li><a href="Network_Information_Service" title="Network Information Service">NIS</a>
<ul><li><a href="NIS%2B" title="NIS+">NIS+</a></li></ul></li>
<li><a href="Network_File_System" title="Network File System">NFS</a></li>
<li><a href="Oracle_ZFS" title="Oracle ZFS">ZFS</a>
<ul><li><a href="ZFS%2B" title="ZFS+">ZFS+</a></li></ul></li>
<li><a href="SunView" title="SunView">SunView</a></li>
<li><a href="NeWS" title="NeWS">NeWS</a></li>
<li><a href="OpenWindows" title="OpenWindows">OpenWindows</a></li>
<li><a href="Java_Desktop_System" title="Java Desktop System">Java Desktop System</a></li>
<li><a href="Oracle_Developer_Studio" title="Oracle Developer Studio">Studio</a></li>
<li><a href="Java_(software_platform)" title="Java (software platform)">Java</a></li>
<li><a href="StarOffice" title="StarOffice">StarOffice</a></li>
<li><a href="IPlanet" title="IPlanet">iPlanet</a></li>
<li><a href="Sun_Java_System" title="Sun Java System">Java System</a></li>
<li><a href="Oracle_Secure_Global_Desktop" title="Oracle Secure Global Desktop">Sun Secure Global Desktop</a></li>
<li><a href="MySQL" title="MySQL">MySQL</a></li>
<li><a href="Sun_xVM" title="Sun xVM">xVM</a></li>
<li><a href="GlassFish" title="GlassFish">GlassFish</a></li>
<li><a href="VirtualBox" title="VirtualBox">VirtualBox</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Storage</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Sun_StorageTek_5800_System" title="Sun StorageTek 5800 System">StorageTek 5800 System</a></li>
<li><a href="StorageTek_SL8500" title="StorageTek SL8500">StorageTek SL8500</a></li>
<li><a href="Sun_Open_Storage" title="Sun Open Storage">Open Storage</a></li>
<li><a href="QFS" title="QFS">QFS</a></li>
<li><a href="Oracle_ZFS" title="Oracle ZFS">ZFS</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Performance</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Sun_Cloud" title="Sun Cloud">Cloud</a></li>
<li><a href="Sun_Constellation_System" title="Sun Constellation System">Constellation System</a></li>
<li><a href="Sun_Visualization_System" title="Sun Visualization System">Visualization System</a></li>
<li><a href="Oracle_Grid_Engine" title="Oracle Grid Engine">Grid Engine</a></li>
<li><a href="Lustre_(file_system)" title="Lustre (file system)">Lustre</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Research</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Oracle_Labs" title="Oracle Labs">Sun Microsystems Laboratories</a></li>
<li><a href="PicoJava" title="PicoJava">picoJava</a></li>
<li><a href="Fortress_(programming_language)" title="Fortress (programming language)">Fortress</a></li>
<li><a href="Project_Looking_Glass" title="Project Looking Glass">Project Looking Glass</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Education</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="BlueJ" title="BlueJ">BlueJ</a></li>
<li><a href="Curriki" title="Curriki">Global Education &amp; Learning Community</a></li>
<li><a href="Oracle_Certification_Program" title="Oracle Certification Program">SCPs</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Acquisitions</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Afara_Websystems" title="Afara Websystems">Afara Websystems</a></li>
<li><a href="Cobalt_Networks" title="Cobalt Networks">Cobalt Networks</a></li>
<li><a href="Gridware" class="mw-redirect" title="Gridware">Gridware</a></li>
<li><a href="Lighthouse_Design" title="Lighthouse Design">Lighthouse Design</a></li>
<li><a href="Montalvo_Systems" title="Montalvo Systems">Montalvo Systems</a></li>
<li><a href="MySQL_AB" title="MySQL AB">MySQL AB</a></li>
<li><a href="Pixo" title="Pixo">Pixo</a></li>
<li><a href="Procom_Technology" title="Procom Technology">Procom Technology</a></li>
<li><a href="SavaJe" title="SavaJe">SavaJe</a></li>
<li><a href="StorageTek" title="StorageTek">StorageTek</a></li>
<li><a href="Tarantella%2C_Inc." title="Tarantella, Inc.">Tarantella</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Slogans</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="The_Network_is_the_Computer" title="The Network is the Computer">The Network is the Computer</a></li>
<li><a href="Write_once%2C_run_anywhere" title="Write once, run anywhere">Write once, run anywhere</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Community</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><td colspan="2" class="navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Common_Development_and_Distribution_License" title="Common Development and Distribution License">Common Development and Distribution License</a></li>
<li><a href="Java_Community_Process" title="Java Community Process">Java Community Process</a></li>
<li><a href="NetBeans" title="NetBeans">NetBeans</a></li>
<li><a href="OpenOffice.org" title="OpenOffice.org">OpenOffice.org</a></li>
<li><a href="OpenSolaris" title="OpenSolaris">OpenSolaris</a></li>
<li><a href="OpenSPARC" title="OpenSPARC">OpenSPARC</a></li>
<li><a href="OpenJDK" title="OpenJDK">OpenJDK</a></li>
<li><a href="Open_Source_University_Meetup" title="Open Source University Meetup">Open Source University Meetup</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="List_of_Sun_Microsystems_employees" title="List of Sun Microsystems employees">People</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Bill_Joy" title="Bill Joy">Bill Joy</a></li>
<li><a href="Andy_Bechtolsheim" title="Andy Bechtolsheim">Andy Bechtolsheim</a></li>
<li><a href="Scott_McNealy" title="Scott McNealy">Scott McNealy</a></li>
<li><a href="Vinod_Khosla" title="Vinod Khosla">Vinod Khosla</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><td class="navbox-abovebelow" colspan="3"><div>Category</div></td></tr></tbody></table></div>
<div class="navbox-styles"></div><div role="navigation" class="navbox" aria-labelledby="Oracle_Corporation396" style="padding:3px"><table class="nowraplinks hlist mw-collapsible mw-collapsed navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="Oracle_Corporation396" style="font-size:114%;margin:0 4em"><a href="Oracle_Corporation" title="Oracle Corporation">Oracle Corporation</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Corporate directors</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li>Jeffrey Berg</li>
<li>H. Raymond Bingham</li>
<li><a href="Michael_Boskin" title="Michael Boskin">Michael Boskin</a></li>
<li><a href="Safra_Catz" title="Safra Catz">Safra Catz</a></li>
<li><a href="Larry_Ellison" title="Larry Ellison">Larry Ellison</a></li>
<li><a href="H%C3%A9ctor_Garc%C3%ADa-Molina" title="Héctor García-Molina">Héctor García-Molina</a></li>
<li><a href="Joseph_Grundfest" title="Joseph Grundfest">Joseph Grundfest</a></li>
<li><a href="Jeffrey_O._Henley" class="mw-redirect" title="Jeffrey O. Henley">Jeffrey O. Henley</a></li>
<li><a href="Mark_Hurd" title="Mark Hurd">Mark Hurd</a></li>
<li><a href="Jack_Kemp" title="Jack Kemp">Jack F. Kemp</a></li>
<li>Donald L. Lucas</li>
<li>Naomi O. Seligman</li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Acquisitions (<a href="List_of_acquisitions_by_Oracle" title="List of acquisitions by Oracle">list</a>)</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Sun_Microsystems" title="Sun Microsystems">Sun</a></li>
<li><a href="PeopleSoft" title="PeopleSoft">PeopleSoft</a></li>
<li><a href="Hyperion_Solutions" title="Hyperion Solutions">Hyperion</a></li>
<li><a href="Siebel_Systems" title="Siebel Systems">Siebel</a></li>
<li><a href="BEA_Systems" title="BEA Systems">BEA</a></li>
<li><a href="JD_Edwards" title="JD Edwards">JD Edwards</a></li>
<li><a href="RightNow_Technologies" title="RightNow Technologies">RightNow</a></li>
<li><a href="Virtual_Iron" title="Virtual Iron">Virtual Iron</a></li>
<li><a href="TimesTen" title="TimesTen">TimesTen</a></li>
<li>Sunopsis</li>
<li><a href="NetSuite" title="NetSuite">NetSuite</a></li>
<li><a href="Cerner" class="mw-redirect" title="Cerner">Cerner</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Databases</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Oracle_Database" title="Oracle Database">Oracle Database</a></li>
<li><a href="MySQL" title="MySQL">MySQL</a></li>
<li><a href="InnoDB" title="InnoDB">InnoDB</a></li>
<li><a href="Berkeley_DB" title="Berkeley DB">Berkeley DB</a></li>
<li><a href="TimesTen" title="TimesTen">TimesTen</a></li>
<li><a href="Oracle_Rdb" title="Oracle Rdb">Rdb</a></li>
<li><a href="Essbase" title="Essbase">Essbase</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Programming languages</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul>
<li><a href="PL/SQL" title="PL/SQL">PL/SQL</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><abbr title="Integrated development environment">IDEs</abbr></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="JDeveloper" title="JDeveloper">JDeveloper</a></li>
<li><a href="Oracle_Forms" title="Oracle Forms">Forms</a></li>
<li><a href="NetBeans" title="NetBeans">NetBeans</a></li>
<li><a href="Oracle_Application_Express" title="Oracle Application Express">Apex</a></li>
<li><a href="Oracle_SQL_Developer" title="Oracle SQL Developer">SQL Developer</a></li>
<li><a href="Oracle_Developer_Studio" title="Oracle Developer Studio">Developer Studio</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Middleware</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Oracle_Fusion_Middleware" title="Oracle Fusion Middleware">Fusion Middleware</a></li>
<li><a href="Oracle_WebCenter" title="Oracle WebCenter">WebCenter</a></li>
<li><a href="Oracle_SOA_Suite" title="Oracle SOA Suite">SOA Suite</a></li>
<li><a href="Oracle_WebLogic_Server" class="mw-redirect" title="Oracle WebLogic Server">WebLogic Server</a></li>
<li><a href="Oracle_Coherence" title="Oracle Coherence">Coherence</a></li>
<li><a href="Tuxedo_(software)" title="Tuxedo (software)">Tuxedo</a></li>
<li><a href="GlassFish" title="GlassFish">GlassFish</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Operating systems</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Oracle_Linux" title="Oracle Linux">Oracle Linux</a></li>
<li><a href="Oracle_Solaris" title="Oracle Solaris">Oracle Solaris</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Computer hardware</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Sun_Fire" title="Sun Fire">Sun Fire</a></li>
<li><a href="SPARC" title="SPARC">SPARC</a> (<a href="SPARC_T-Series" class="mw-redirect" title="SPARC T-Series">T-Series</a>, <a href="SPARC_Enterprise" title="SPARC Enterprise">Enterprise</a>)</li>
<li><a href="Storage_Technology_Corporation" class="mw-redirect" title="Storage Technology Corporation">StorageTek</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Computer appliances</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Oracle_Exadata" title="Oracle Exadata">Oracle Exadata</a></li>
<li><a href="Oracle_Exalogic" title="Oracle Exalogic">Oracle Exalogic</a></li>
<li><a href="Oracle_Big_Data_Appliance" title="Oracle Big Data Appliance">Big Data Appliance</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Education and recognition</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Oracle_Certification_Program" title="Oracle Certification Program">Oracle Certification Program</a></li></ul>
</div></td></tr><tr><td class="navbox-abovebelow" colspan="2"><div>
<ul><li><span class="noviewer" typeof="mw:File"><span title="Category"></span></span> Category</li></ul>
</div></td></tr></tbody></table></div>
<div class="navbox-styles"></div><div role="navigation" class="navbox" aria-labelledby="Oracle_free_and_open-source_software_(FOSS)115" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="Oracle_free_and_open-source_software_(FOSS)115" style="font-size:114%;margin:0 4em"><a href="Oracle_Corporation" title="Oracle Corporation">Oracle</a> <a href="Free_and_open-source_software" title="Free and open-source software">free and open-source software (FOSS)</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Software</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%">Applications</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="OpenOffice.org" title="OpenOffice.org">OpenOffice.org</a></li>
<li><a href="VirtualBox" title="VirtualBox">VirtualBox</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Programming languages</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Databases</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Berkeley_DB" title="Berkeley DB">Berkeley DB</a></li>
<li><a href="InnoDB" title="InnoDB">InnoDB</a></li>
<li><a href="MySQL" title="MySQL">MySQL</a></li>
<li><a href="Oracle_NoSQL_Database" title="Oracle NoSQL Database">Oracle NoSQL Database</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Frameworks and<br>development tools</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="DTrace" title="DTrace">DTrace</a></li>
<li><a href="GlassFish" title="GlassFish">GlassFish</a></li>
<li><a href="HotSpot_(virtual_machine)" title="HotSpot (virtual machine)">HotSpot</a></li>
<li><a href="Image_Packaging_System" title="Image Packaging System">Image Packaging System</a></li>
<li><a href="Java_(software_platform)" title="Java (software platform)">Java (software platform)</a></li>
<li><a href="Maxine_Virtual_Machine" title="Maxine Virtual Machine">Maxine Virtual Machine</a></li>
<li><a href="Memory_(storage_engine)" title="Memory (storage engine)">Memory</a></li>
<li><a href="Nashorn_(JavaScript_engine)" title="Nashorn (JavaScript engine)">Nashorn</a></li>
<li><a href="NetBeans" title="NetBeans">NetBeans</a></li>
<li><a href="OpenJDK" title="OpenJDK">OpenJDK</a></li>
<li><a href="VisualVM" title="VisualVM">VisualVM</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Operating systems</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="OpenSolaris" title="OpenSolaris">OpenSolaris</a></li>
<li><a href="Oracle_Linux" title="Oracle Linux">Oracle Linux</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Other</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Java_Desktop_System" title="Java Desktop System">Java Desktop System</a></li>
<li><a href="OCFS2" title="OCFS2">OCFS2</a></li>
<li><a href="Oracle_Grid_Engine" title="Oracle Grid Engine">Oracle Grid Engine</a></li>
<li><a href="Oracle_VM_Server_for_x86" title="Oracle VM Server for x86">Oracle VM Server for x86</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Related</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Google_LLC_v._Oracle_America%2C_Inc." title="Google LLC v. Oracle America, Inc.">Google LLC v. Oracle America, Inc.</a></li></ul>
</div></td></tr></tbody></table></div>
<div class="navbox-styles"></div><div role="navigation" class="navbox" aria-labelledby="Programming_languages625" style="padding:3px"><table class="nowraplinks hlist mw-collapsible expanded navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="Programming_languages625" style="font-size:114%;margin:0 4em"><a href="Programming_language" title="Programming language">Programming languages</a></div></th></tr><tr><td class="navbox-abovebelow" colspan="2"><div>
<ul><li><a href="Comparison_of_programming_languages" title="Comparison of programming languages">Comparison</a></li>
<li><a href="Timeline_of_programming_languages" title="Timeline of programming languages">Timeline</a></li>
<li><a href="History_of_programming_languages" title="History of programming languages">History</a></li></ul>
</div></td></tr><tr><td colspan="2" class="navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Ada_(programming_language)" title="Ada (programming language)">Ada</a></li>
<li><a href="ALGOL" title="ALGOL">ALGOL</a>
<ul><li><a href="Simula" title="Simula">Simula</a></li></ul></li>
<li><a href="APL_(programming_language)" title="APL (programming language)">APL</a></li>
<li><a href="Assembly_language" title="Assembly language">Assembly</a></li>
<li><a href="BASIC" title="BASIC">BASIC</a>
<ul><li><a href="Visual_Basic" title="Visual Basic">Visual Basic</a>
<ul><li><a href="Visual_Basic_(classic)" title="Visual Basic (classic)">classic</a></li>
<li><a href="Visual_Basic_(.NET)" title="Visual Basic (.NET)">.NET</a></li></ul></li></ul></li>
<li><a href="C_(programming_language)" title="C (programming language)">C</a></li>
<li><a href="C%2B%2B" title="C++">C++</a></li>
<li><a href="C_Sharp_(programming_language)" title="C Sharp (programming language)">C#</a></li>
<li><a href="COBOL" title="COBOL">COBOL</a></li>
<li><a href="Erlang_(programming_language)" title="Erlang (programming language)">Erlang</a>
<ul><li><a href="Elixir_(programming_language)" title="Elixir (programming language)">Elixir</a></li></ul></li>
<li><a href="Forth_(programming_language)" title="Forth (programming language)">Forth</a></li>
<li><a href="Fortran" title="Fortran">Fortran</a></li>
<li><a href="Go_(programming_language)" title="Go (programming language)">Go</a></li>
<li><a href="Haskell" title="Haskell">Haskell</a></li>

<li><a href="JavaScript" title="JavaScript">JavaScript</a></li>
<li><a href="Julia_(programming_language)" title="Julia (programming language)">Julia</a></li>
<li><a href="Kotlin_(programming_language)" title="Kotlin (programming language)">Kotlin</a></li>
<li><a href="Lisp_(programming_language)" title="Lisp (programming language)">Lisp</a></li>
<li><a href="Lua" title="Lua">Lua</a></li>
<li><a href="MATLAB" title="MATLAB">MATLAB</a></li>
<li><a href="ML_(programming_language)" title="ML (programming language)">ML</a>
<ul><li><a href="Caml" title="Caml">Caml </a>
<ul><li><a href="OCaml" title="OCaml">OCaml</a></li></ul></li></ul></li>
<li><a href="Pascal_(programming_language)" title="Pascal (programming language)">Pascal</a>
<ul><li><a href="Object_Pascal" title="Object Pascal">Object Pascal</a></li></ul></li>
<li><a href="Perl" title="Perl">Perl </a>
<ul><li><a href="Raku_(programming_language)" title="Raku (programming language)">Raku</a></li></ul></li>
<li><a href="PHP" title="PHP">PHP</a></li>
<li><a href="Prolog" title="Prolog">Prolog</a></li>
<li><a href="Python_(programming_language)" title="Python (programming language)">Python</a></li>
<li><a href="R_(programming_language)" title="R (programming language)">R</a></li>
<li><a href="Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a></li>
<li><a href="Rust_(programming_language)" title="Rust (programming language)">Rust</a></li>
<li><a href="SAS_language" title="SAS language">SAS</a></li>
<li><a href="SQL" title="SQL">SQL</a></li>
<li><a href="Scratch_(programming_language)" title="Scratch (programming language)">Scratch</a></li>
<li><a href="Shell_script" title="Shell script">Shell</a></li>
<li><a href="Smalltalk" title="Smalltalk">Smalltalk</a></li>
<li><a href="Swift_(programming_language)" title="Swift (programming language)">Swift</a></li>
<li><i><a href="List_of_programming_languages" title="List of programming languages">more...</a></i></li></ul>
</div></td></tr><tr><td class="navbox-abovebelow" colspan="2"><div>
<ul><li><span class="noviewer" typeof="mw:File"><span title="List-Class article"></span></span> <b>Lists:</b> <a href="List_of_programming_languages" title="List of programming languages">Alphabetical</a></li>
<li><a href="List_of_programming_languages_by_type" title="List of programming languages by type">Categorical</a></li>
<li><a href="Generational_list_of_programming_languages" title="Generational list of programming languages">Generational</a></li>
<li><a href="Non-English-based_programming_languages" title="Non-English-based programming languages">Non-English-based</a></li>
<li><span class="noviewer" typeof="mw:File"><span title="Category"></span></span> Category</li></ul>
</div></td></tr></tbody></table></div>
<div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1038841319">
/* start https://en.wikipedia.org/ */


.mw-parser-output .tooltip-dotted{border-bottom:1px dotted;cursor:help}


/* end https://en.wikipedia.org/ */
</style></div><div role="navigation" class="navbox authority-control" aria-labelledby="Authority_control_databases_frameless&amp;#124;text-top&amp;#124;10px&amp;#124;alt=Edit_this_at_Wikidata&amp;#124;link=https&amp;#58;//www.wikidata.org/wiki/Q251#identifiers&amp;#124;class=noprint&amp;#124;Edit_this_at_Wikidata1329" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="Authority_control_databases_frameless&amp;#124;text-top&amp;#124;10px&amp;#124;alt=Edit_this_at_Wikidata&amp;#124;link=https&amp;#58;//www.wikidata.org/wiki/Q251#identifiers&amp;#124;class=noprint&amp;#124;Edit_this_at_Wikidata1329" style="font-size:114%;margin:0 4em">Authority control databases </div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">National</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"><ul><li><span class="uid"><a rel="nofollow" class="external text" href="https://d-nb.info/gnd/4401313-9">Germany</a></span></li><li><span class="uid"><a rel="nofollow" class="external text" href="https://id.loc.gov/authorities/sh95008574">United States</a></span></li><li><span class="uid"><a rel="nofollow" class="external text" href="https://catalogue.bnf.fr/ark:/12148/cb12533207m">France</a></span></li><li><span class="uid"><a rel="nofollow" class="external text" href="https://data.bnf.fr/ark:/12148/cb12533207m">BnF data</a></span></li><li><span class="uid"><span class="rt-commentedText tooltip tooltip-dotted" title="Java (programovací jazyk)"><a rel="nofollow" class="external text" href="https://aleph.nkp.cz/F/?func=find-c&amp;local_base=aut&amp;ccl_term=ica=ph117027&amp;CON_LNG=ENG">Czech Republic</a></span></span></li><li><span class="uid"><a rel="nofollow" class="external text" href="https://datos.bne.es/resource/XX540033">Spain</a></span></li><li><span class="uid"><a rel="nofollow" class="external text" href="https://www.nli.org.il/en/authorities/987007561288105171">Israel</a></span></li></ul></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Other</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em"><ul><li><span class="uid"><a rel="nofollow" class="external text" href="https://elmcip.net/node/10259">ELMCIP</a></span></li><li><span class="uid"><a rel="nofollow" class="external text" href="https://lux.collections.yale.edu/view/concept/5e93ea92-26de-42c8-8528-42446566516f">Yale LUX</a></span></li></ul></div></td></tr></tbody></table></div></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2025-07-29" href="https://en.wikipedia.org/wiki/?title=Java_(programming_language)&amp;oldid=1303147329">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>

</body></html>